java读取文件跳过_在Java中读取文本文件-为什么跳过行?
我是新來的,只是努力嘗試讀取文本文件.每行上都有一個單詞和相應的數字代碼.想法是將其讀取并將代碼和單詞放在單獨的變量中.我對這個領域了解不多,但是我一直在網上四處尋找,并提出了以下建議:
try{
FileReader freader=new FileReader(f);
BufferedReader inFile=new BufferedReader(freader);
while (inFile.readLine()!=null){
String s=null;
s=inFile.readLine();
System.out.println(s);
String[] tokens=s.split(" ");
string=tokens[0];
System.out.println(string);
code=tokens[1];
System.out.println(code);
c.insert(string, code);
}//end outer while
}//end try
問題是未讀取文本文件的第一行.然后每次都跳過一行! (換言之,僅讀取第1、3、5、7行等)
正如我上面所說,我是新手,而且我對在線上不同站點上看到的所有不同內容都不了解(例如為什么所有內容都被bufferedThis或bufferedThat或如何正確使用所有標記化器的內容).我在不同的時間嘗試了幾種不同的方法,最終得到了結果.
解決方法:
您的while循環吞噬了文件中的一半行.
while (inFile.readLine()!=null)
那會讀一行,但不會將其分配給任何東西.在循環之前聲明一個String,并以此方式讀取每一行.
String line;
while ((line = inFile.readLine()) != null)
現在變量行將在循環內可用,因此您無需在循環中調用inFile.readLine().
標簽:java,file,text,token,readline
來源: https://codeday.me/bug/20191013/1909971.html
總結
以上是生活随笔為你收集整理的java读取文件跳过_在Java中读取文本文件-为什么跳过行?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 利用百度地图实现搜索定位功能
- 下一篇: dbscan用 java代码_聚类算法之