尝试使用jquery-csv库将CSV格式的数据读取到javascript中,但是在每行末尾的^M
字符处出现CSVDataError: Illegal Data
错误。从CSV文件中删除^ M
看来不管如何保存CSV,我都会得到这个^M
。我只能看到^M
,如果我打开vim
中的CSV文件,即使在文本编辑器或我的IDE中,数据看起来也不错。在使用其他语言(如Python或R)时,我不会遇到此问题。
我正在使用Mac环境。
我该如何解决这个问题,并在将来避免这个问题?
尝试使用jquery-csv库将CSV格式的数据读取到javascript中,但是在每行末尾的^M
字符处出现CSVDataError: Illegal Data
错误。从CSV文件中删除^ M
看来不管如何保存CSV,我都会得到这个^M
。我只能看到^M
,如果我打开vim
中的CSV文件,即使在文本编辑器或我的IDE中,数据看起来也不错。在使用其他语言(如Python或R)时,我不会遇到此问题。
我正在使用Mac环境。
我该如何解决这个问题,并在将来避免这个问题?
dos2unix
进行转换。echo 'a,b,c' > letters.csv
不会附加CR。检查你的文本编辑器设置。看看jQuery-csv页面上的splitlines algorithm,它似乎提供了一个函数,可以为您清理这些有问题的回车。
假设^M
表示一个mac风格的回车,回车的支持包含在以前的版本中,所以你的代码应该可以工作。
来源:我jQuery的CSV
如何实现这个splitLines算法的作者? – brno792 2014-09-26 17:30:35
该页面上已经提供了该实现。 – TML 2014-09-26 17:31:41
所以在我将csv数据读入javascript后,我调用该函数,然后将结果传递到我的csv.toArrays()函数中? – brno792 2014-09-26 17:34:18