java filereader 在偏移处读取

java filereader read at offset

如何使用 FileReader.read() 读取位于 特定偏移量 的字节?

FileReader fr = new FileReader(path);
char[] tmp = null;
fr.read(tmp, 11, 1);
n = tmp.toString();
n = Integer.parseInt(n,16);

虽然 'path' 中的文件有效且不为空,但此代码 returns 出现空指针异常。我打算在这里做的是读取该文件中的第十一个字节。

使用 BufferedReader.readLine() 从文件中读取行在同一个文件上运行良好,但我无法弄清楚如何从特定偏移量开始获取特定数量的字节。

read(char[] buf, int offset, int length)中,offset是buf数组中的偏移量。 您需要的是跳过 offset 个字符。

FileReader fr = new FileReader(path);
int offset = 11;
fr.skip(11);
int c = fr.read();