我在Angular应用程序中使用XLSX库从另一个文件写入Excel文件。我的初始文件是用base64编码的,所以我需要解码它并修改一些单元格。接下来,我必须在base64中保存这个新文件。
const byteArray = new Uint8Array(
atob(files[0].base64Content)
.split('')
.map((char) => char.charCodeAt(0))
);
const file = new Blob([byteArray], { type: 'text/csv' });
const imageFile = new File([file], files[0].fileName, {
type: 'text/csv',
});
let fileReader = new FileReader();
fileReader.readAsArrayBuffer(imageFile);
fileReader.onload = (e) => {
var arrayBuffer: any = fileReader.result;
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('');
var workbook = XLSX.read(bstr, { type: 'binary' });
var worksheet = workbook.Sheets['Worksheet1'];
worksheet['BP3'] = 'x';
};
我读了工作表,改变了一个单元格的值。我现在需要保存这个文件在base64。有人能帮帮我吗?
1条答案
按热度按时间1l5u6lss1#
我假设“XLSX库”,你的意思是SheetsJS,在这种情况下,我相信你正在寻找的是
writeFile
方法(在这里找到)。您可以使用type
选项作为选项参数的一部分。