如何不规则使用引号来解析CSV文件?

问题描述 投票:-1回答:1

我必须解析一个逗号分隔的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列不带引号,而第二个条目带引号。

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

java csv parsing quote
1个回答
0
投票

您的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。整个行都用引号引起来,而现有引号又被另一个引号(按预期)转义了-除了每行末尾缺少结尾引号。

© www.soinside.com 2019 - 2024. All rights reserved.