2013-04-15 145 views
2

我有一个csv文件,其中有5列由“,”分隔。在从csv文件读取时忽略逗号值

当数据中列有“,”时读取csv时发生问题。

我尝试过使用Opencsv,但它给出了同样的问题。

+0

数据中是否存在quote_char – Crazyshezy

+1

垃圾进入,垃​​圾进出 – Qwerky

+0

问题不在于您的代码。这是与CSV文件。 – SiN

回答

0

您需要使用一些其他符号来分隔csv文件中的单词。我不认为有一种方法可以用文字来捕捉逗号。

1

无法区分作为您的价值一部分的逗号与用于分隔两个值的逗号。如果您的值将包含逗号,并且您无法转义它们,则必须使用另一个分隔符。

2

如果该列包含逗号(,),则其必须用双引号括起来(")。双重报价可以通过重复转义("")。 所以,一个系列,包括用逗号值必须被表示为这样:

"hello, world", "This says: ""hello, world""" 

此行有两个值:

  • 你好,世界
  • 这是说:“你好,世界”
+0

我无法修改输入文件。 –

0

它不可能识别逗号,它是CSV的值和逗号部分的一部分。 使用不同的分隔符。 值必须用引号括起来。或 在转换为CSV之前,将所有逗号转换为某些不会出现在您的值中的字符,这些字符可以在稍后阶段恢复。

1

我修改了代码以在csv中使用分号作为分隔符。现在我可以正确读取“,”的数据。