我有一个python代码,例如:
import csv
reader = csv.reader(open('myText.txt', 'r'), delimiter=",")
for row in reader:
print row[0] + 'is' + row[1] + '</br>'
我在JS或JQuery中寻找类似的动作/代码[1] 。这个动作的名称也是受欢迎的。我正在探索JS并想知道是否有办法获得在线/离线csv,解析它,迭代,相应地在我的网站中注入一些HTML。
[1]:更确切地说,我寻找 reader = csv.reader的JS翻译(open('myText.txt','r'),delimiter =“,”),I可以管理其余部分。
注意: myText.txt为this online file
答案 0 :(得分:2)
对于给定的CSV文件,我认为这样的事情应该足够了(仅使用jquery
):
$.get('/path/to/pinyinipamapping.csv')
.done(function(csvData) {
var body = $('body');
csvData.split(/\r\n|\n/).forEach(function (rowStr) {
if (rowStr[0] != '#') {
var row = rowStr.split(',');
body.append('<p>' + row[0] + 'is' + row[1] + '</p>');
}
});
});
但是,这对引用的逗号等无效。
要获得更完整的CSV解析,请查看使用Javascript code to parse CSV data中代码的this blog post。此外,您可以考虑使用jQuery-csv library,但它处于测试阶段。
答案 1 :(得分:1)
对于快速简单的文件,它可能是这样的:(受此answer启发的代码)
// Put here the url to the file
url = "https://raw.github.com/cburgmer/cjklib/master/cjklib/data/pinyinipamapping.csv";
$.ajax({
type: "GET",
url: url,
dataType: "text",
success: function(data) {processData(data);}
});
function processData(allText) {
// Get an array of lines
var allTextLines = allText.split(/\r\n|\n/);
// Get the number of columns using the first row
var entries = allTextLines[0].split(',');
var lines = [];
// while there are elements in the row
while (entries.length>0) {
// remove that line, split it and store in our array
lines.push(entries.shift().split(','));
}
// Now do your stuff with the array lines
}