Can we read large local xls/xlsx file in angularjs/Javascript without using any liabrary, if not then which is most suitable library?
While looking for this I found this:
Basic parsers implemented in pure JS:
http://oss.sheetjs.com/js-xls/ (XLS files, what you wanted)
http://oss.sheetjs.com/js-xlsx/ (XLSX/XLSM/XLSB files)
I'm providing the reference How to parse Excel file in Javascript/HTML5
https://gist.github.com/psjinx/8002786
Hope this could be helpful.
use this code to read
<script>
/* set up XMLHttpRequest */
var url = "test.xlsx";
var oReq = new XMLHttpRequest();
oReq.open("GET", url, true);
oReq.responseType = "arraybuffer";
oReq.onload = function(e) {
var arraybuffer = oReq.response;
/* convert data to binary string */
var data = new Uint8Array(arraybuffer);
var arr = new Array();
for(var i = 0; i != data.length; ++i) arr[i] = String.fromCharCode(data[i]);
var bstr = arr.join("");
/* Call XLSX */
var workbook = XLSX.read(bstr, {type:"binary"});
/* DO SOMETHING WITH workbook HERE */
var first_sheet_name = workbook.SheetNames[0];
/* Get worksheet */
var worksheet = workbook.Sheets[first_sheet_name];
console.log(XLSX.utils.sheet_to_json(worksheet,{raw:true}));
}
oReq.send();
</script>
https://github.com/SheetJS/js-xlsx is better liabrary at this time. But in my way files xlsx - are not reading, and files older then 2003 version of Excel also has trouble. But in official docs write then it is supported. But maybe just I have this trouble. I also use this feature for get json from excel:
var roa = XLSX.utils.sheet_to_row_object_array(worksheet);
来源:https://stackoverflow.com/questions/29465930/read-local-xls-xlsx-file-in-javascript