使用 Apache Common CSV 时忽略记录值中的换行符



我正在使用 apache 通用 csv 解析 csv,但我得到的记录比它存在于 csv 中更多,这是由于在我的 csv 中,我有一些值包含用双引号括起来的记录分隔符 ((。

https://commons.apache.org/proper/commons-csv/

例:

test, "test
test 2",test 3, test 4 

我期待 o/p 作为

Record 1: test
Record 2: 
test
test 2
Record 3: test 3
Record 4: test 4

但我正在变成这样

Record 1: test
Record 2: test
Record 3: test 2
Record 4: test 3
Record 5: test 4

这是我目前用于解析的代码。

CSVParser parser = CSVParser.parse(reader,CSVFormat.RFC4180.withFirstRecordAsHeader(( .withQuote(null((;

只是为了补充早些时候,我遇到了在记录字段值中使用字段分隔符的问题,该问题已通过 .withQuote(null( 解决。

关于我们如何解决这个问题的任何线索?

当您

将引号字符设置为 null 时,我看不出这是如何工作的。RFC4180将引号字符设置为双引号,这就是您在此处想要的。

最新更新