美文网首页
xlsx导入成--json

xlsx导入成--json

作者: 路灯下de男孩 | 来源:发表于2018-01-12 17:42 被阅读0次

    这两天遇到大难题了,就是这个   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

          本文链接:https://www.haomeiwen.com/subject/higfoxtx.html