当前位置: 首页 > news >正文

antd本地上传excel文件并读取文件的数据转为json

1.写一个上传

这里直接用upload组件即可

<Upload {...uploadProps} maxCount={1} accept={".xlsx"}><Button icon={<UploadOutlined />}>{`${formatMessage({id: 'clk_upload'}, {file: formatMessage({id: 'excel_file'})})}`}</Button></Upload>

2.写props

const uploadProps: any = {onRemove: (file: any) => {const index = fileList.indexOf(file);const newFileList = fileList.slice();newFileList.splice(index, 1);setFileList(newFileList);},beforeUpload: (file: any) => {let reader = new FileReader();reader.onload = function(event: any) {let data = new Uint8Array(event.target.result);let workbook = XLSX.read(data, {type: 'array'});let worksheet = workbook.Sheets[workbook.SheetNames[0]];let jsonData = XLSX.utils.sheet_to_json(worksheet, {header: 1});reader.readAsArrayBuffer(file);setFileList(file?.name?.includes('xlsx') ? [file]: []);return false;},fileList};

beforeUpload函数里处理上传的数据转成Uint8Array,读取文件中的第一个表,使用.utils.sheet_to_json方法读出json数据,具体在进行处理即可。

http://www.lryc.cn/news/220649.html

相关文章:

  • BI数据可视化:不要重复做报表,只需更新数据
  • fiddler抓包拦截请求转发到其他地址
  • 【Shell编程】| if 判断
  • Java手动引入Maven依赖的Jar包
  • 计算机毕设 基于大数据的社交平台数据爬虫舆情分析可视化系统
  • conda取消自动进入base环境
  • 【文生图】Stable Diffusion XL 1.0模型Full Fine-tuning指南(U-Net全参微调)
  • STM32笔记—DMA
  • 机器学习概论
  • 卡尔曼家族从零解剖-(04)贝叶斯滤波→细节讨论,逻辑梳理,批量优化
  • 小菜React
  • 新手用mac电脑,对文件的疑问和gpt回应
  • LeetCode|动态规划|392. 判断子序列、115. 不同的子序列、 583. 两个字符串的删除操作
  • vscode 阅读 android以及kernel 源码
  • Intel oneAPI笔记(3)--jupyter官方文档(SYCL Program Structure)学习笔记
  • verilog——移位寄存器
  • C++11 多线程学习笔记
  • nn.embedding函数详解(pytorch)
  • gitee.com[0: xxx.xx.xxx.xx]: errno=Unknown error
  • bug: https://aip.baidubce.com/oauth/2.0/token报错blocked by CORS policy
  • 简单工厂VS工厂方法
  • 使用VSCODE链接Anaconda
  • Mysql数据库 9.SQL语言 查询语句 连接查询、子查询
  • 二叉树按二叉链表形式存储,试编写一个判别给定二叉树是否是完全二叉树的算法
  • Android自定义控件
  • Java 中的 Cloneable 接口和深拷贝
  • 项目实战:通过axios加载水果库存系统的首页数据
  • RK3568平台 内存的基本概念
  • mysql联合索引和最左匹配问题。
  • 全球发布|首个AI视角下的生态系统架构解读—《生态系统架构--人工智能时代从业者的新思维》重磅亮相!