因此,我有这种情况:我有两个.csv文件,我需要读取和保存它们的数据。
问题在这里:
while ((nextPM = csvReader2.readNext()) != null) {
System.out.println(nextPM[0]);
while ((nextRecord = csvReader.readNext()) != null) {
System.out.println(nextRecord[0] + "asd");
if(nextRecord[0].equals(nextPM[0])) {
System.out.println(nextRecord[0] + " " + nextRecord[1] + " " + nextPM[2]);
}
}
}
第一次很完美,但是当第一个while循环再次开始时,第二个while只是被跳过了。有什么办法吗?当然
nextPM
和nextRecord
是String[]
(在我向您展示的代码之外初始化) 最佳答案
当内循环在外循环的第一次迭代中完成时,cvsReader
将到达EOF,因此任何进一步的调用csvReader.readNext()
将返回null。
一种解决方案是不嵌套循环,而是先将文件之一读入数组或其他集合中,然后在读取第二个数组时对该数组进行处理。
关于java - 跳过csvReader的while循环,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52405219/