如何使用javascript从*.csv文件读取数据?

如何使用javascript从*.csv文件读取数据?

我的CSV数据如下:

头1,头2,头3,头4,头5,值1 1,值2_1,值3_1,值4_1,值5_1,值1_2,值2_2,值3_2,值4_2.

如何使用Javascript读取这些数据并转换成这样的数组?:

[头1:值1,头2:值2,头3:值3,头4:值4,头5:值5_1],[头1:值1,头2:值2,头3:值3,头4:值4,头5:值5 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);<br>
    document.write(allText);<br>
    document.write(txtFile);<br></script>


慕雪6442864
浏览 4688回答 3
3回答

凤凰求蛊

不用自己写.。这个jQueryCSV库有一个名为$.csv.toObjects(csv)自动完成映射。注意:该库旨在处理任何CSV数据RFC 4180兼容,包括大多数“简单”解决方案忽略的所有令人讨厌的边缘情况。就像@BLazemonger已经说过的,首先您需要添加换行以使数据有效的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使用代码:var&nbsp;data&nbsp;=&nbsp;$.csv.toObjects(csv):保存在“数据”中的输出将是:[ &nbsp;&nbsp;{&nbsp;heading1:"value1_1",heading2:"value2_1",heading3:"value3_1",heading4:"value4_1",heading5:"value5_1"&nbsp;}&nbsp; &nbsp;&nbsp;{&nbsp;heading1:"value1_2",heading2:"value2_2",heading3:"value3_2",heading4:"value4_2",heading5:"value5_2"&nbsp;}]注意:从技术上讲,编写键值映射的方式是无效的JavaScript。包含键值对的对象应该包装在括号中。如果你想自己试试看,我建议你看看基本用法演示在“toObjects()”选项卡下。免责声明:我是jQuery-CSV的原作者。最新情况:编辑以使用OP提供的数据集,并包含一个指向演示的链接,其中可以测试数据的有效性。UPDATE 2:由于谷歌代码的关闭。jQuery-csv已迁移到gitHub。
打开App,查看更多内容
随时随地看视频慕课网APP