Usa*_*riq 2 javascript json primeng angular
我正在尝试读取 xlsx 文件中的数据并将其转换为 json,但日期列值正在更改 这是屏幕截图:我正在从中读取数据的 excel 文件的屏幕截图
以下是从 Excel 文件读取数据并转换为 JSON 的代码:
onBasicUpload(event){
let workBook = null;
let jsonData = null;
const reader = new FileReader();
const file = event.files[0];
console.log(file,"file is here");
reader.onload = (event) => {
const data = reader.result;
workBook = xlsx.read(data, { type: 'binary' });
jsonData = workBook.SheetNames.reduce((initial, name) => {
const sheet = workBook.Sheets[name];
initial[name] = xlsx.utils.sheet_to_json(sheet);
console.log(jsonData,"jsonDAta");
return initial;
}, {});
const dataString = JSON.stringify(jsonData);
console.log(dataString,"stringify data");
this.jsonArr = JSON.parse(dataString)
console.log(this.jsonArr,"parsed json");
console.log(Object.keys(this.jsonArr['data'][0]))
}
reader.readAsBinaryString(file);
}
Run Code Online (Sandbox Code Playgroud)
它返回给我:DOCDT 是返回日期的值。 {“数据”:[{“DOCNO”:“001”,“NETAMOUNT”:30000,“IREF1”:“50”,“IREF2”:“100”,“DOCDT”:43989},{“DOCNO”:2 ,"NETAMOUNT":40000,"IREF1":40,"IREF2":90,"DOCDT":43989}]}
尝试使用这个,
onBasicUpload(event){
let workBook = null;
let jsonData = null;
const reader = new FileReader();
const file = event.files[0];
console.log(file,"file is here");
reader.onload = (event) => {
const data = reader.result;
workBook = xlsx.read(data, { type: 'binary' , cellDates: true });
jsonData = workBook.SheetNames.reduce((initial, name) => {
const sheet = workBook.Sheets[name];
initial[name] = xlsx.utils.sheet_to_json(sheet);
console.log(jsonData,"jsonDAta");
return initial;
}, {});
const dataString = JSON.stringify(jsonData);
console.log(dataString,"stringify data");
this.jsonArr = JSON.parse(dataString)
console.log(this.jsonArr,"parsed json");
console.log(Object.keys(this.jsonArr['data'][0]))
}
reader.readAsBinaryString(file);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6850 次 |
| 最近记录: |