Pouvons-nous lire un grand fichier local xls/xlsx dans angularjs/Javascript sans utiliser de bibliothèque, sinon quelle est la bibliothèque la plus appropriée?
En cherchant cela, j'ai trouvé ceci:
Analyseurs de base implémentés en JS pur:
http://oss.sheetjs.com/js-xls/ (fichiers XLS, ce que vous vouliez)
http://oss.sheetjs.com/js-xlsx/ (fichiers XLSX/XLSM/XLSB)
Je fournis la référence Comment analyser un fichier Excel en Javascript/HTML5
https://Gist.github.com/psjinx/8002786
J'espère que cela pourrait être utile.
utilisez ce code pour lire
<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 est une meilleure bibliothèque pour le moment. Mais à ma façon, les fichiers xlsx - ne sont pas en cours de lecture, et les fichiers antérieurs à la version 2003 d'Excel ont également des problèmes. Mais dans les documents officiels, il est pris en charge. Mais peut-être que j'ai juste ce problème. J'utilise également cette fonctionnalité pour obtenir json d'Excel:
var roa = XLSX.utils.sheet_to_row_object_array(worksheet);