最近工作中遇到一个需求,大致需求就是将Excel文件在导入时解析为json格式转换数据结构再传输给后台。这方面的库比较少,比较主流的是js-xlsx,官网地址为sheetjs官网,但是文档都写得不太清楚,坑也比较多,这里我做一个简单的介绍与运用与避坑指南。
先介绍几个基本概念:workbook 对象,指的是整份 Excel 文档。我们在使用 js-xlsx 读取 Excel 文档之后就会获得 workbook 对象。
worksheet 对象,指的是 Excel 文档中的表。我们知道一份 Excel 文档中可以包含很多张表,而每张表对应的就是 worksheet 对象。
废话不多说直接上这里演示下网页中使用
/*FileReader共有4种读取方法:1.readAsArrayBuffer(file):将文件读取为ArrayBuffer。2.readAsBinaryString(file):将文件读取为二进制字符串3.readAsDataURL(file):将文件读取为Data URL4.readAsText(file, [encoding]):将文件读取为文本,encoding缺省值为'UTF-8'*/
var wb;//读取完成的数据 var rABS = true; //是否将文件读取为二进制字符串 function importf(obj) {//导入 if(!obj.files) {
return;
}
var f = obj.files[0];
console.log(f);
var reader = new FileReader();
reader.onload = function(e) {