同一レコードの再読み込み2006年07月10日 13時46分34秒

もう一度、同じレコードを読みたいときの手法。

ファイルから読み込んだ後、処理を何らかの事情で中断したために、もう一度同じレコードを読み込みたい事がある。s$seq_position で現在の位置から -1 レコードを使おうとすると、s$seq_position で位置した後の s$read だったのか、s$seq_read の後の次のレコードの s$seq_read だったのかで、移動しなければいけないレコードの数が変わる。

そのようなときは、s$seq_position に 0 を渡すといい。


s$seq_position (&port, &(short)POS_NUM_RECORD_BACKWARD, &(short)0, &error);

これだと、必ず最後に読んだレコードを次の s$seq_read で再読み込みすることが出来る。

s$seq_position と s$seq_read の組合せの為に、このおかしな動作は起きる。