我无法理解apachecommons csv库的核心。当我想通过apachecommons-csv从csv文件中按标题名称获取列时,你能给我一个建议吗?例如,我有这样的csv文件:
Delays, Computation time, Communication time
0., 500000, 10
20., 563210, 20
55., 546541., 23.
12., 465487., 23.
45., 456547., 28.
87., 985458., 56.
47., 456778., 45.
我想得到数组:双[]延迟,双[]compTime,双[]commTime由csv中的值组成。
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
}
}
在文档中:
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,并且在每次迭代时都会删除,当然)。