0

我写这段代码来获取信息。来自 csv 文件,这个文件包含超过 8000 行但是当我运行程序时它只返回 575 行。任何人都可以帮我解决这个问题,还需要知道如何比较连续行的时间字段,我需要比较这些值并根据最小的数据重新排列数据,然后根据特定条件添加具有特定值的新行.

/* this is the code */ 
import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;

import au.com.bytecode.opencsv.CSVReader;


public class CSVdata {

/**
     * @param args
     */
    public static void main(String[] args) {




        try{
            FileReader klausuar = new FileReader(
"klausurphase_propa_anonym.csv");
            CSVReader reader = new CSVReader(klausuar);
            String [] nextLine;
            reader.readNext();
            while ((nextLine = reader.readNext()) != null) {
                // nextLine[] is an array of values from the line


                System.out.println(nextLine[2] + " **  " + nextLine[3] + " **  " + 
nextLine[4] + " **  " ) ;
            }
        klausuar.close();
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }

}
}
4

2 回答 2

0

我在这里看到 2 个可能的答案:

  1. 您的 CSV 格式错误(尝试在 Excel 中打开并查看实际大小)
  2. 由于您的程序仅在屏幕上打印行,因此您的控制台(Eclipse 或系统)可能有一个有限的缓冲区,无法显示更多内容。
于 2013-10-16T11:55:20.953 回答
0

感谢您的回答,问题是控制台缓冲区有限,我尝试打印更少的列并显示更多的行。其他问题没有答案。

于 2013-10-16T12:33:15.097 回答