【发布时间】:2016-06-14 05:26:13
【问题描述】:
Reader in = new FileReader(dataFile);
Iterable<CSVRecord> records = CSVFormat.RFC4180.withFirstRecordAsHeader().withIgnoreEmptyLines(true).withTrim().parse(in);
// Reads the data in csv file until last row is encountered
for (CSVRecord record : records) {
String column1= record.get("column1");
这里 csv 文件中的 column1 值类似于“1234557。所以当我阅读该列时,它会在开头使用引号获取。Apache commons csv 中有什么方法可以跳过这些。
来自 csv 文件的示例数据:"""0996108562","""204979956"
【问题讨论】:
-
那个屏幕转储毫无意义。看起来像 Excel 的快照。您的代码没有读取该内容,那么您向我们展示
dataFile引用的文件的实际内容如何?以文本形式粘贴到问题中,不要插入图像。但是,它可能会包含类似"""0996108562","""204979956"的内容,它们是两个 CSV 引用值,其中值的第一个字符是引号。 CSV 解析器不会删除这些,而且绝对不应该。这是将数字数据作为文本输入的 Excel 怪癖,与 CSV 无关。 自行删除,或不要在 Excel 中添加。
标签: java csv apache-commons-csv