【问题标题】:Javascript upload and parse file on flyJavascript即时上传和解析文件
【发布时间】:2013-10-09 19:28:49
【问题描述】:
是否可以使用上传文件
<input type="file">
然后将其解析为javascript数组而不将文件保存在服务器端?
您能否建议任何插件使用 csv(或任何其他)文件类型来执行此操作。
在不使用后端的情况下这样做是个好主意吗?
谢谢。
【问题讨论】:
标签:
javascript
csv
file-upload
【解决方案1】:
上传 csv 并在客户端解析它的 Js 代码,然后将它们绘制到控制台中
function uploadDealcsv () {};
/*------ Method for read uploded csv file ------*/
uploadDealcsv.prototype.getCsv = function(e) {
let input = document.getElementById('dealCsv');
input.addEventListener('change', function() {
if (this.files && this.files[0]) {
var myFile = this.files[0];
var reader = new FileReader();
reader.addEventListener('load', function (e) {
let csvdata = e.target.result;
parseCsv.getParsecsvdata(csvdata); // calling function for parse csv data
});
reader.readAsBinaryString(myFile);
}
});
}
/*------- Method for parse csv data and display --------------*/
uploadDealcsv.prototype.getParsecsvdata = function(data) {
let parsedata = [];
let newLinebrk = data.split("\n");
for(let i = 0; i < newLinebrk.length; i++) {
parsedata.push(newLinebrk[i].split(","))
}
console.table(parsedata);
}
var parseCsv = new uploadDealcsv();
parseCsv.getCsv();
<input type="file" id="dealCsv"/>