2016-04-03 225 views
2

我无法理解apache commons csv库的核心。 当我想通过apache-commons-csv从csv文件中获取标题名称来获取列时,您能否建议一种方法? 例如,我有这样的csv文件:Apache commons csv

Delays, Computation time, Communication time 
0., 500000, 10 
20.,, 20 
55., 546541., 23. 
12., 465487., 23. 
45., 456547., 28. 
87., 985458., 56. 
47., 456778., 45. 

我想阵列:双[]的延迟,双[] COMPTIME,双[] commTime由来自CSV值。

回答

0

在文档:

Reader in = new FileReader("path/to/file.csv"); 
Iterable<CSVRecord> records = CSVFormat.EXCEL.parse(in); 
for (CSVRecord record : records) { 
    String lastName = record.get("Last Name"); 
    String firstName = record.get("First Name"); 
} 

你会得到每一行对应于列名的单元格。 (这里lastName和firstName不会被使用,并且在每次迭代时都会被删除,当然)。

+0

更新问题。 –

+0

这里只是算法,取3个数组,为每一行添加单元格到他们的数组....这不是apache的常见。只是一个算法。 – Aeldred

0
public void parseInputCSV() throws IOException { 
final Reader reader = new InputStreamReader(inputFile.toURL().openStream(), "UTF-8"); 
Iterable<CSVRecord> records = CSVFormat.EXCEL.parse(reader); 
for (CSVRecord record : records) { 
    String first = record.get("FIRST_COLUMN"); 
    String second = record.get("SECOND_COLUMN"); 
    // all other columns 
} 

}

+0

如何按列名称获取数组? =( –

+0

作为csv元素的数组???请在问题中发布您的csv文件的几行 –

+0

我已更新问题。 –

相关问题