读取 angular 中的 excel 文件 2
Read excel file in angular 2
我正在使用 ng2-File-upload,我想读取 excel 文件及其所有行并获取总计数。有什么方法可以通过使用此模块来实现它,以及如何通过普通 JavaScript 或打字稿来完成它。
我使用了接受的答案中提到的包。
ng2-file-upload 有一个 uploader
有回调函数 this.uploader.onAfterAddingFile
。我刚刚调用了更改函数并读取了如下文件:
onFileChange(file: any) {
/* wire up file reader */
//const target: DataTransfer = <DataTransfer>(evt.target);
//if (target.files.length !== 1) throw new Error('Cannot use multiple files');
const reader: FileReader = new FileReader();
reader.onload = (e: any) => {
/* read workbook */
const bstr: string = e.target.result;
const wb: XLSX.WorkBook = XLSX.read(bstr, { type: 'binary' });
/* grab first sheet */
const wsname: string = wb.SheetNames[0];
const ws: XLSX.WorkSheet = wb.Sheets[wsname];
/* save data */
var data = <any>(XLSX.utils.sheet_to_json(ws, { header: 1 }));
this.totalInventories = data.length > 0 ? data.length - 1 : 0;
};
if (file._file)
reader.readAsBinaryString(file._file);
}
希望对大家有所帮助:)
我正在使用 ng2-File-upload,我想读取 excel 文件及其所有行并获取总计数。有什么方法可以通过使用此模块来实现它,以及如何通过普通 JavaScript 或打字稿来完成它。
我使用了接受的答案中提到的包。
ng2-file-upload 有一个 uploader
有回调函数 this.uploader.onAfterAddingFile
。我刚刚调用了更改函数并读取了如下文件:
onFileChange(file: any) {
/* wire up file reader */
//const target: DataTransfer = <DataTransfer>(evt.target);
//if (target.files.length !== 1) throw new Error('Cannot use multiple files');
const reader: FileReader = new FileReader();
reader.onload = (e: any) => {
/* read workbook */
const bstr: string = e.target.result;
const wb: XLSX.WorkBook = XLSX.read(bstr, { type: 'binary' });
/* grab first sheet */
const wsname: string = wb.SheetNames[0];
const ws: XLSX.WorkSheet = wb.Sheets[wsname];
/* save data */
var data = <any>(XLSX.utils.sheet_to_json(ws, { header: 1 }));
this.totalInventories = data.length > 0 ? data.length - 1 : 0;
};
if (file._file)
reader.readAsBinaryString(file._file);
}
希望对大家有所帮助:)