【问题标题】:How to skip headers in csv file when headers exists存在标题时如何跳过csv文件中的标题
【发布时间】:2020-02-16 17:40:50
【问题描述】:

我正在使用 apache-common-csv 从 CSV 文件导入数据,我想跳过第一行的标题。重要的是,文件有时可以包含标题,但有时不包含。 我有一个像下面这样的实现,但结果并不让我满意,因为当文件没有标题时,第一行正在剪切。

CSVFormat.DEFAULT
        .withDelimiter(';')
        .withHeader(HEADERS)
        .withSkipHeaderRecord()
        .parse(InputStreamReadersource.inputStream)

【问题讨论】:

  • 我将通过组合标题单词形成一个字符串,并比较 csv 的第一行是否与此字符串相同。它不会解决您的问题吗?
  • 你是对的。我做了一个过滤器来比较两个字符串,它的工作原理。谢谢

标签: java csv apache-commons-csv


【解决方案1】:

我认为这对你有帮助。

CSVFormat.RFC4180
         .withFirstRecordAsHeader()
         .withDelimiter(';').parse(InputStreamReadersource.inputStream);

这里是 Commons CSV 用户指南https://commons.apache.org/proper/commons-csv/user-guide.html的参考

【讨论】:

  • 这没有回答问题,因为它总是跳过第一条记录,即使它不是标题。
猜你喜欢
  • 2015-03-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-10-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-12-24
相关资源
最近更新 更多