js读取Excel文件

来源:互联网 发布:北京特比尔软件 编辑:程序博客网 时间:2024/05/16 11:40

1.需要用到js-xlsx,下载地址:js-xlsx

2.demo:

<script type="text/javascript" src="xlsx.full.min.js"></script><input type="file" id="file"/><div id="demo"></div><script type="text/javascript">$(document).ready(function(){/*FileReader共有4种读取方法:1.readAsArrayBuffer(file):将文件读取为ArrayBuffer。2.readAsBinaryString(file):将文件读取为二进制字符串3.readAsDataURL(file):将文件读取为Data URL4.readAsText(file, [encoding]):将文件读取为文本,encoding缺省值为'UTF-8' */var wb;//读取完成的数据var rABS = false; //是否将文件读取为二进制字符串function fixdata(data) { //文件流转BinaryStringvar o = "",l = 0,w = 10240;for(; l < data.byteLength / w; ++l) o += String.fromCharCode.apply(null, new Uint8Array(data.slice(l * w, l * w + w)));o += String.fromCharCode.apply(null, new Uint8Array(data.slice(l * w)));return o;}$("#file").change(function(){if(!this.files) {return;}var f = this.files[0];var reader = new FileReader();reader.onload = function(e) {var data = e.target.result;if(rABS) {wb = XLSX.read(btoa(fixdata(data)),{type: 'base64'});} else {wb = XLSX.read(data,{type: 'binary'});}document.getElementById("demo").innerHTML= JSON.stringify( XLSX.utils.sheet_to_json(wb.Sheets[wb.SheetNames[0]]) );};if(rABS) {reader.readAsArrayBuffer(f);} else {reader.readAsBinaryString(f);}})})</script>

0 0