我有一个字符串 - 它并不完全是逗号分隔的,但具有与csv数据集相同的效果:
response = "Date;Amount;Account;User\n2014-12-01;12.01;abcxyz;user1\n2014-12-01;10.09;fine;user2\n\r\n\t\t\r\n"
我尝试运行以下内容进行解析:
CSV.parse(response, :col_sep => ";", :row_sep => :auto)
但是我遇到了以下错误:
CSV::MalformedCSVError:未引用的字段不允许 \r 或 \n
有任何想法为什么会出现这种情况吗?
我还尝试过执行 response.gsub!("\t", "")
,看看是否有问题,但似乎没有帮助。
:auto
作为row_sep
支持的值,但没有提到col_sep
。因为它捕捉到这个空格,所以它会一直保留在那里,如果字段没有被引用,就会出现错误。 - Nick McCurdyresponse
中的;
和空格字符的情况下交换了row_sep
和col_sep
. - Nick McCurdy