順番に保存されるファイルからいくつかの情報を読み取って解析しようとしています。、サイズ 8 の char[] 、 int 、サイズ 8のint [ ]、最後にint。つまり、56 バイトの情報を読み取っています。私は RandomAccessFile を使用していますが、readChar() と readInt() の各操作を実行した後に seek() が必要なのか、それともこれらのメソッドを次々と呼び出すことができるのか疑問に思っていました。これは、各操作が完了した後にファイルポインターがリセットされるかどうか、または安全である場合は、ファイルが閉じられるまで fp が最後の場所に従うと仮定するかどうかについての質問だと思います。
ここに私が書いたものがあります:
int currentOffset = 128;
for(int i = 0; i<16; i++){
//Initialize nodes.
readDisk.seek(currentOffset);
char[] name = new char[8];
for(int j = 0; j<8; j++){
name[i] = readDisk.readChar();
}
int size = readDisk.readInt();
int[] blockPointers = new int[8];
for(int j = 0; j<8; j++){
blockPointers[i] = readDisk.readInt();
}
int used = readDisk.readInt();
これらの操作の後、fp は 156 になりますか? ありがとうございました!これがばかげた質問である場合は申し訳ありません。