我有一个大文件,我正在打开一个FileInputStream.此文件包含一些文件,每个文件都有一个从开头和大小的偏移量.此外,我有一个解析器,应该评估这样一个包含的文件.
File file = ...; // the big file long offset = 1734; // a contained file's offset long size = 256; // a contained file's size FileInputStream fis = new FileInputStream(file ); fis.skip(offset); parse(fis,size); public void parse(InputStream is,long size) { // parse stream data and insure we don't read more than size bytes is.close(); }
我觉得这不是好习惯.有没有更好的方法来做到这一点,也许使用缓冲?
此外,我觉得skip()方法会大大减慢阅读过程.