Javaを使用してバイナリファイル内の特定のバイトに到達する方法を見つけようとしています. 私はバイト レベルの操作について大量の読み取りを行ってきましたが、完全に混乱してしまいました。現在、以下のコードのようにファイルをループして、必要なバイトで停止するように指示できます。しかし、私はこれがハムフィストであり、これを行うための「正しい」方法があることを知っています.
たとえば、ファイルがあり、オフセット 000400 からバイトを返す必要がある場合、FileInputStream からこれを取得するにはどうすればよいでしょうか?
public ByteLab() throws FileNotFoundException, IOException {
String s = "/Volumes/Staging/Imaging_Workflow/B.Needs_Metadata/M1126/M1126-0001.001";
File file = new File(s);
FileInputStream in = new FileInputStream(file);
int read;
int count = 0;
while((read = in.read()) != -1){
System.out.println(Integer.toHexString(count) + ": " + Integer.toHexString(read) + "\t");
count++;
}
}
ありがとう