这段代码似乎不起作用;我的 csv 文件中有 10 行,但只有 5 行被打印出来。只有第 2,4,6,8,10 行被打印出来。
String text = CSVFile.readLine();
while (text != null){
//lines.add(infile.next());
//outfile.println(lines);
outfile.println(CSVFile.readLine());
if (CSVFile.readLine()==null)
break;
}
我想我知道为什么它会跳过奇数,但我不知道如何解决它。 因为我告诉它 readLine() 两次,所以我相信它会从第一个开始,然后是第三个,然后依此类推。
最佳答案
因为你在 while 循环中调用了两次 readLine 。试试这个:
String text = CSVFile.readLine();
while (text != null){
outfile.println(text);
text = CSVFile.readLine();
if (text==null)
break;
读取器是有状态的,并且记住上次调用该方法时它读取的位置...
关于java - readLine 在 outfiling 时跳过行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19665513/