当前位置: 代码迷 >> java >> 如何提取一行的每个元素并将其存储到变量/数组中,然后使用Buffer Reader继续下一行?
  详细解决方案

如何提取一行的每个元素并将其存储到变量/数组中,然后使用Buffer Reader继续下一行?

热度:15   发布时间:2023-07-27 09:30:41.0

我有一个多行列表CSV,我想拉一条线,并从Java中的那一行中拉出每个元素。 之后,我要转到下一行。 每行有不同数量的列,那么如何定制代码呢?

我至少正在寻找一些指导,找不到其他类似的东西。

如果要读取或写入csv文件,使用apache的Commons CSV库可以省去繁重的工作。 可以提供帮助。 一个示例(也在该站点上)可能是:

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");
}

从您的描述看来,您的文件似乎没有每一列的标题。 使用为您完成此操作-它比Commons CSV快3倍,并且具有许多功能。

// you have many configuration options here - check the tutorial. By default values are trimmed and blank lines skipped.
CsvParserSettings settings = new CsvParserSettings();

CsvParser parser = new CsvParser(settings);

List<String[]> allRows = parser.parseAll(new FileReader(new File("/path/to/your/file.csv")));

披露:我是这个图书馆的作者。 它是开源且免费的(Apache V2.0许可证)。

  相关解决方案