我试图弄清楚如何使用 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++;
}
}
谢谢