gpt4 book ai didi

java - OpenCSV 解析器无法解析数据中的双引号

转载 作者:行者123 更新时间:2023-11-29 04:53:40 35 4
gpt4 key购买 nike

我有以下 CSV 文件,

"id","Description","vale"
1,New"Account","val1"

我无法使用 OpenCSV 读取上述 CSV 文件。它无法读取 New"Account,因为数据中有双引号。我的 CSV 阅读器构造函数是:

csvReader = new CSVReader(new FileReader(currentFile), ',', '\"', '\0');

最佳答案

这是无效的 csv:

1,New"Account","val1"

应该是:

1,"New""Account","val1" -> 如果你想要 1 New"Account val1

1,"New""Account""","val1" -> 如果你想要 1 New"Account"val1

(引号)字段内的引号,必须用另一个引号转义。

虽然您可以更改代码以正确读取格式错误的 csv,但首先应修复 csv 数据,因为使用较大的 csv 文件或更新该数据可能会出现更多错误。

通常,当字段中有分隔符或其他引号时,会使用引号。因此,如果您忽略引号并仅在分隔符上拆分,那么如果在将来的数据更新中字段内有分隔符,将会出现问题 - 例如:

1,"John, Doe",123

关于java - OpenCSV 解析器无法解析数据中的双引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34508448/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com