我有一個使用緩衝讀取器和分裂讀取文件的代碼,所述文件是通過在文件開頭自動添加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