数组转换为表格并导出excel 文件下载

需要引用的插件 myxlsx.core.min.js
FileSaver.min.js

该atob函数将base64编码的字符串解码为一个新字符串,其中包含二进制数据每个字节的字符。

const byteCharacters = atob(b64Data);
每个字符的代码点(charCode)都是字节的值。我们可以通过使用.charCodeAt字符串中每个字符的方法应用它来创建一个字节值数组。

const byteNumbers = new Array(byteCharacters.length);for (let i = 0; i < byteCharacters.length; i++) {
byteNumbers[i] = byteCharacters.charCodeAt(i);}
您可以将此字节值数组转换为实际类型的字节数组,方法是将其传递给Uint8Array构造函数。

const byteArray = new Uint8Array(byteNumbers);
这反过来可以Blob通过将其包装在数组中并将其传递给Blob构造函数来转换为a 。

const blob = new Blob([byteArray], {type: contentType});
上面的代码有效。然而,通过处理byteCharacters较小的切片而不是一次性处理,可以稍微改善性能。在我的粗略测试中,512字节似乎是一个很好的切片大小。这给了我们以下功能。

import React from “react”;
import ReactDOM from “react-dom”;
import fileSaver from ‘file-saver’
import Common from “@utils/common”;
// 全局调用名称为 fileUtil.方法名

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值