在Java中读取CSV文件时跳过第一行

时间:2014-01-08 14:45:41

标签: java list file parsing

在阅读CSV文件时,我需要忽略第一行。第一行包含CSV的日期和标题,我不需要阅读。

我必须从第二行开始阅读。有人可以帮帮我吗?

String csvFilename = "C:\\Data\\csv_files\\REPORT.csv";
String filterCSV = "C:\\Data\\csv_files\\Output.csv";
CSVWriter write = new CSVWriter(new FileWriter(filterCSV));
CSVReader csvR = new CSVReader(new FileReader(csvFilename)); ---- 
List<CSVData> list = csv.parse(col, csvR);

for (Object object : list) {
    ------
}

5 个答案:

答案 0 :(得分:3)

非常简单:

 List<CSVData> list = csv.parse(col, csvR);
 list.remove(0);

答案 1 :(得分:2)

如果您没有自己编写CSVReader类,那么此构造函数将跳过文件的第一行:

CSVReader reader = new CSVReader(new FileReader(file), ',', '\'', 1);

答案 2 :(得分:1)

在使用 BufferedReader 在while循环中阅读整个数据之前,请使用 br.readLine(),然后排除第一行 csv文件 ,然后使用 readLine()函数读取剩余内容。

    BufferedReader br = new BufferedReader(new FileReader("file.csv"));
    String line = " ";
    br.readLine();
    while((line=br.readLine())!=null)
    {
        System.out.println(line);
    }

答案 3 :(得分:0)

您还可以使用CSVParser.java中的方法

BufferedReader br = new BufferedReader(new FileReader("file.csv"));
CSVParser csvParser = new CSVParser(reader, 
CSVFormat.DEFAULT.withHeader("firstColHeader","secondColHeader").withFirstRecordAsHeader().withTrim());

答案 4 :(得分:-1)

首先,您必须像List一样添加到ArrayList中,然后像这样删除index[0]

list.remove(0);