gpt4 book ai didi

java - 如何解析不规则使用引号的 CSV 文件?

转载 作者:行者123 更新时间:2023-12-01 22:19:15 25 4
gpt4 key购买 nike

我必须解析一个以逗号分隔的 CSV 文件,其中包含不规则使用双引号的列。文件条目如下所示:

"1920,The False Road,American,Fred Niblo,""Enid Bennett, Lloyd Hughes""
"1920,813,American,""Charles Christie, Scott Sidney"",""Wedgwood Nowell, Ralph Lewis, Wallace Beery, Laura La Plante"",mystery

-

+---+------------+-----------------------------------+----+
| | A | B | C |
+---+------------+-----------------------------------+----+
| 1 | 1920 | Fred Niblo | ...|
| 2 | 1920 | ""Charles Christie, Scott Sidney""| ...|
+---+------------+-----------------------------------+----+

如您所见,第一个条目的第 4 列不带引号,第二个条目的第 4 列包含引号。

有没有办法考虑这种不规则的使用?

最佳答案

您的 csv 实际上应该如下所示才正确:

1920,The False Road,American,Fred Niblo,"Enid Bennett, Lloyd Hughes",
1920,813,American,"Charles Christie, Scott Sidney","Wedgwood Nowell, Ralph Lewis, Wallace Beery, Laura La Plante",mystery

(另请注意第一行末尾的额外逗号)

此处,包含逗号的字段用 " 括起来,您可以使用任何 csv 解析器(或库)正确读取该字段。

但不知何故,您的 csv 似乎已转换为单字段 csv。整行都用引号引起来,现有的引号用另一个引号转义(如预期)——除了每行末尾缺少一个结束引号。

<小时/>

要解决此问题,您可以首先在每行末尾添加引号,保存文件,然后将其解析为 csv,这将为每一行返回一个单元格(包含所有数据)。

然后,您可以将每个单元格的内容写入另一个文件,然后再次将该文件解析为 csv,这将为您提供正确的数据。

关于java - 如何解析不规则使用引号的 CSV 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58604492/

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