我能够在网页上显示csv文件中的内容(基于我在本网站上找到的内容),但是如何将csv值读入JavaScript中的数组中?
如果我有一个CSV格式的文件,
红色,绿色,蓝色...
橙色,黄色,黑色,
靛蓝,紫色,海军蓝,...
感谢您的帮助。
答案 0 :(得分:2)
function UploadCSV() {
var regex = /^([a-zA-Z0-9\s_\\.\-:])+(.csv|.txt)$/;
if (regex.test($("#fileUpload").val().toLowerCase())) {
if (typeof (FileReader) != "undefined") {
var reader = new FileReader();
reader.onload = function (e) {
try{
var table = $("<table />");
var rows = e.target.result.split("\n");
for (var i = 0; i < rows.length; i++) {
var row = $("<tr />");
var cells = rows[i].split("|");
if (cells.length > 1) {
for (var j = 0; j < cells.length; j++) {
var cell = $("<td />");
var td = cells[j].replace(/[^\x00-\x7F]/g, "");
cell.text(td);
row.append(cell);
}
table.append(row);
}
}
$("#dvCSV").html('');
$("#dvCSV").append(table);
}
catch(e)
{
$('#meessageBar1').text(e.message);
$('#meessageBar1').fadeIn("slow", function () {
setTimeout(messageBar1Remove, 2000);
});
}
}
reader.readAsText($("#fileUpload")[0].files[0]);
} else {
$('#meessageBar1').text('This browser does not support HTML5.');
$('#meessageBar1').fadeIn("slow", function () {
setTimeout(messageBar1Remove, 2000);
});
}
}
}
这是我用来从PIPE('|')分隔的csv文件数据读取数据到HTML表中的代码段,无论您将csv文件用作分隔符,您都可以var cells = rows[i].split("|");
更改此行。在这里,我将每行的每个单元格数据附加到表行中,您可以省略此操作,而只需将整个数据插入数组即可。如果这对您有帮助,请将其标记为可接受的答案。谢谢。