嘗試使用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