javascript - 将 .csv 文件读取到 javascript 中的对象/数组

标签 javascript jquery csv jquery-csv

我正在尝试做一些我认为相当简单但似乎不起作用的事情。我在与脚本文件相同的目录中有一个 .csv 文件。我想使用 .csv 文件中的数据创建对象或数组。如何使用 javascript 访问本地文件?

抱歉缺少代码,但我什至不知道该走哪条路;我试过 .get 和 ajax 以及 this plugin但我只是不知道我在做什么。有人可以给我一个关于如何加载文件并将其打印在 div 中的清晰示例吗?

最佳答案

为了模拟一个静态文件服务器,你可以在命令行上使用python运行一个http服务器。这是使用 ajax 请求所必需的。

python -m SimpleHTTPServer  

或者如果你有 python 3

python -m http.server

现在有两个部分可以将该文件上传到网页。 1) 发出 ajax 请求,2) 解析 csv。有许多不同的库可以实现 ajax 请求,但在这种情况下,您可能会发现结合了两者的最简单的开箱即用解决方案是 d3.js .

d3.csv("filename.csv", function(err, data) {

    // csv is parsed into an array of objects, as data

});

当然,这只有在您从本地主机加载页面时才有效。

编辑:

确保从 index.html 文件的位置运行 http 服务器。那么你在d3.csv函数中的请求是相对于index的。最后,数据仅在回调内部可用,任何错误消息(或 null)都将放入 err 参数中。

Project
|
+-- index.html
|    
+-- data
|  |  
|  \-- dataset.csv

那么 index.html 中的代码看起来像

d3.csv("data/dataset.csv", function(err, data) {

    if (err) console.log(err) // error messages

    console.log(data);   // should contain the parsed csv
});

关于javascript - 将 .csv 文件读取到 javascript 中的对象/数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33467977/

相关文章:

使用 MySQL 插入 (utf8) 读取 PHP CSV

javascript - 将 highcharts 数据导出到 CSV 文件

javascript - Underscore.js - 如何对嵌套的对象数组进行排序

javascript - 使用 Angularjs 从后端获取所选选项

Javascript 可拖动图像脚本

javascript - 使用相同的链接 onclick 淡入和淡出 div

javascript - 使跟踪代码从 URL 栏中消失

javascript - javascript `window.Notation` 对象是什么?

javascript - 循环div?

python - 属性错误: 'list' object has no attribute 'split' when i try to split a row from csv file