码迷,mamicode.com
首页 > Web开发 > 详细

xlsx导入成--json

时间:2018-03-16 11:17:09      阅读:273      评论:0      收藏:0      [点我收藏+]

标签:遇到   import   xls   array   sbin   utils   blank   lan   parse   

这两天遇到大难题了,就是这个   xlsx   导入问题,之前用的xlsx.full.min.js,写的导入,结果不兼容ie浏览器,研究这个也好长时间,网上居然还没有搜到合适的,自己写从xlsx官网上找了个大例子,改了改,

在引入

shim.js                  jszip.js              xlsx.js

的基础上

上代码:


var X = XLSX;

var rABS = false;

var process_wb = function process_wb(wb) {

var result = {};

wb.SheetNames.forEach(function(sheetName) {

var roa = X.utils.sheet_to_json(wb.Sheets[sheetName], {

header: 1

});

if(roa.length) result[sheetName] = roa;

});

var output = JSON.stringify(result, 2, 2);

console.log(JSON.parse(output));

document.write(output);

};

var do_file = function do_file(files) {

var f = files[0];

var reader = new FileReader();

reader.onload = function(e) {

if(typeof console !== ‘undefined‘) console.log("onload", new Date(), rABS);

var data = e.target.result;

if(!rABS){

data = new Uint8Array(data)

}

process_wb(X.read(data, {

type: rABS ? ‘binary‘ : ‘array‘

}));

};

if(rABS){

reader.readAsBinaryString(f);

}else{

reader.readAsArrayBuffer(f);

}

};

(function() {

var xlf = document.getElementById(‘xlf‘);

if(!xlf.addEventListener) return;

function handleFile(e) {

console.log(e.target.files);

// 获取到文件

do_file(e.target.files);

}

xlf.addEventListener(‘change‘, handleFile, false);

})();

 

 


github:https://github.com/jialianbao/xlsx-Import

xlsx导入成--json

标签:遇到   import   xls   array   sbin   utils   blank   lan   parse   

原文地址:https://www.cnblogs.com/boomBoy/p/8579389.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!