我有一个使用缓冲读取器和分裂读取文件的代码,所述文件是通过在文件开头自动添加4KB空白空间的方法创建的,这导致我在读取以下内容时发生:如何跳过文件的一部分然后读取一行?
首先代码:
BufferedReader metaRead = new BufferedReader(new FileReader(metaFile));
String metaLine = "";
String [] metaData = new String [100000];
while ((metaLine = metaRead.readLine()) != null){
metaData = metaLine.split(",");
for (int i = 0; i < metaData.length; i++){
System.out.println(metaData[i]);
}
}
这是结果,记住这个文件已经存在,并且包含值:
//4096 spaces then the first actual word in the document which is --> testTable2
Name
java.lang.String
true
No Reference
有没有办法跳过第4096位,并获得直交流文件内的价值所以我可以定期得到结果?因为我稍后会在其他操作中使用metaData数组,并且我非常确定这些空格会混淆数组中的插槽数量。任何建议,将不胜感激。
你有没有考虑过,呃,'BufferedRead er.skip()'? – EJP
为什么不修复文件创建以摆脱无意义的4K空间?而不是建立合作的错误? – EJP