DataInput.skipBytes的Sun 文档指出它“尝试从输入流中跳过 n 个字节的数据,丢弃跳过的字节。但是,它可能会跳过一些较小的字节数,可能为零。这可能是由于多种条件中的任何一种;在跳过 n 个字节之前到达文件末尾只是一种可能性。”
除了到达文件末尾,为什么
skipBytes()
不能跳过正确的字节数?(DataInputStream
我使用的将包装 aFileInputStream
或 aPipedInputStream
。)如果我确实想跳过 n 个字节并抛出一个
EOFException
如果这导致我转到文件末尾,我应该使用readFully()
并忽略生成的字节数组吗?或者,还有更好的方法?