我的 CSV 数据如下所示:
heading1,heading2,heading3,heading4,heading5
value1_1,value2_1,value3_1,value4_1,value5_1
value1_2,value2_2,value3_2,value4_2,value5_2
...
你如何读取这些数据并使用 JavaScript 转换成这样的数组?:
[
heading1: value1_1,
heading2: value2_1,
heading3: value3_1,
heading4: value4_1
heading5: value5_1
],[
heading1: value1_2,
heading2: value2_2,
heading3: value3_2,
heading4: value4_2,
heading5: value5_2
]
....
我试过这段代码,但没有运气!:
<script type="text/javascript">
var allText =[];
var allTextLines = [];
var Lines = [];
var txtFile = new XMLHttpRequest();
txtFile.open("GET", "file://d:/data.txt", true);
txtFile.onreadystatechange = function()
{
allText = txtFile.responseText;
allTextLines = allText.split(/\r\n|\n/);
};
document.write(allTextLines);
document.write(allText);
document.write(txtFile);
</script>
原文由 Mahesh Thumar 发布,翻译遵循 CC BY-SA 4.0 许可协议
注意: 在提醒我有效 CSV 文件中可能出现的所有“特殊情况”(如转义引号)之前,我编写了此解决方案。我将把我的答案留给那些想要快速和肮脏的人,但我推荐 Evan 的答案 以确保准确性。
当您的
data.txt
文件是一长串以逗号分隔的条目且没有换行符时,此代码将起作用:数据.txt:
javascript:
以下代码适用于每组记录之间带有换行符的“真实”CSV 文件:
数据.txt:
javascript:
http://jsfiddle.net/mblase75/dcqxr/