【发布时间】:2010-12-05 16:03:37
【问题描述】:
我正在使用 Ruby 的 CSV 库来解析一些 CSV。我有一个看似格式正确的 CSV 文件,是通过将 Excel 文件导出为 CSV 创建的。
但是CSV.open(filename, 'r') 会导致CSV::IllegalFormatError。
文件中没有恶意逗号或引号,也没有任何我能看到的可能导致问题的内容。
我怀疑问题可能与行尾有关。我能够解析通过文本编辑器(Aquamacs)手动输入的数据。只是当我尝试使用从 Excel(对于 OS X)导出的数据时,才会出现问题。当我在 vim 中打开导出的 CSV 文件时,所有文本都出现在一行中,^M 出现在两行之间。
从文档看来,您可以为 open 提供行分隔符;但是我不确定在这种情况下应该是什么。
【问题讨论】: