plus.io.FileReader的readasdataurl读取的xlxs文件用sheetjs读取乱码
代码样例:
handleFileChange(filePath) {
let _this = this;
// const file = event.target.files[0];
const reader = new plus.io.FileReader();
reader.onloadend = (e) => {
// console.log( e);
const content = e.target.result;
// let regx= '/.*base64,/'
// let content2 = content.replace(regx,'');
// console.log(content);
const workbook = Excle.read(content, { type: 'base64'});
const sheetName = workbook.SheetNames[0];
const worksheet = workbook.Sheets[sheetName];
console.log(worksheet);
const jsonData = Excle.utils.sheet_to_json(worksheet, { header: 1 ,raw:false});
// console.log(JSON.stringify(jsonData));
_this.content = JSON.stringify(jsonData);
};
reader.onerror = (e) => {
console.error('读取文件失败:', e.message);
}
const file = plus.io.resolveLocalFileSystemURL(
filePath,
function(fileEntry){
fileEntry.file((filex) => {
reader.readAsDataURL(filex,'utf-8'); // 读取文本文件
// 若要读取其他类型文件,如ArrayBuffer,可以使用reader.readAsArrayBuffer(file);
});
},
function(e){
console.log(e);
}
);
// reader.readAsArrayBuffer(file);
}
结果输入是这样的
请教一下各位是什么原因,怎么解决