如何在java中解析CSV行

时间:2012-08-25 14:29:49

标签: java maven csv

我有不同的用例,而不仅仅是使用csv阅读器并为其提供用于解析的CSV文件。我需要一个java库,我可以从CSV文件中提供一行,它应该能够解析它。

任何可用的java库都能做到吗? (在发布此内容之前,我尝试了谷歌一段时间。)。我发现了来自apache的opencsv,在它的java文档中它说它有一个名为CSVParser的API,它接受一行并解析它,但是这个API并不存在于二进制文件中。

我正在尝试这种依赖

<dependency> 
    <groupId>net.sf.opencsv</groupId> 
    <artifactId>opencsv</artifactId> 
    <version>2.0</version> 
</dependency> 

并尝试初始化CSVParser。它不起作用。我不确定是否有不同的或新版本的opencsv,我想念,请告诉我

1 个答案:

答案 0 :(得分:12)

我不确定你的意思是“它并不存在”。 OpenCSV完美无缺。官方网站上的一个用法示例:

CSVReader reader = new CSVReader(new FileReader("yourfile.csv"));
String [] nextLine;
while ((nextLine = reader.readNext()) != null) {
    // nextLine[] is an array of values from the line
    System.out.println(nextLine[0] + nextLine[1] + "etc...");
}

注意,CSVReader包裹CSVParser更低级别。不过,上述示例应足以满足任何常规用途。