首页 > 其他分享 >前端导入导出 Excel

前端导入导出 Excel

时间:2024-03-25 14:36:02浏览次数:20  
标签:XLSX const xlsx Excel 导出 导入 文件 workbook

前端导入导出 Excel 文件通常使用一些现成的库或工具来简化操作。以下是一种常见的实现方法:

导出 Excel

1. 使用现成的库

可以使用像 xlsxexceljs 这样的 JavaScript 库来生成 Excel 文件。这些库提供了创建 Excel 文件所需的各种功能和 API。

// 使用 xlsx 库示例
const XLSX = require('xlsx');

// 创建一个工作簿
const workbook = XLSX.utils.book_new();

// 创建一个工作表
const worksheet = XLSX.utils.json_to_sheet([{ Name: "John", Age: 30 }, { Name: "Jane", Age: 25 }]);
XLSX.utils.book_append_sheet(workbook, worksheet, 'Sheet1');

// 将工作簿导出为 Excel 文件
XLSX.writeFile(workbook, 'example.xlsx');

2. 手动创建 Excel 文件

你也可以直接将数据导出为 CSV(逗号分隔值)格式,然后让用户手动将其保存为 Excel 文件。

导入 Excel

1. 使用现成的库

同样地,可以使用像 xlsx 这样的库来读取 Excel 文件并将其解析为 JavaScript 对象。

// 使用 xlsx 库示例
const XLSX = require('xlsx');

// 读取 Excel 文件
const workbook = XLSX.readFile('example.xlsx');

// 获取第一个工作表
const worksheet = workbook.Sheets[workbook.SheetNames[0]];

// 将工作表数据解析为 JavaScript 对象
const data = XLSX.utils.sheet_to_json(worksheet);
console.log(data);

2. 前端处理

在前端,你可以使用像 xlsx 这样的库或者 FileReader 来读取用户上传的 Excel 文件,然后将其解析为 JavaScript 对象。

// 使用 xlsx 库示例
import XLSX from 'xlsx';

// 处理上传的 Excel 文件
const handleFileUpload = (event) => {
  const file = event.target.files[0];
  const reader = new FileReader();

  reader.onload = (e) => {
    const data = new Uint8Array(e.target.result);
    const workbook = XLSX.read(data, { type: 'array' });

    // 获取第一个工作表
    const worksheet = workbook.Sheets[workbook.SheetNames[0]];

    // 将工作表数据解析为 JavaScript 对象
    const jsonData = XLSX.utils.sheet_to_json(worksheet);
    console.log(jsonData);
  };

  reader.readAsArrayBuffer(file);
};

注意事项

  • 在前端进行 Excel 文件的导入导出可能会有一些安全性方面的限制,因为浏览器的同源策略。
  • 在处理大量数据时,要考虑性能和内存占用。
  • 不同的 Excel 文件格式(如 .xls.xlsx)可能需要不同的处理方式。

以上是一种常见的前端导入导出 Excel 文件的方法,你可以根据具体的需求和项目情况选择合适的方案。

标签:XLSX,const,xlsx,Excel,导出,导入,文件,workbook
From: https://www.cnblogs.com/byj666/p/18094313

相关文章

  • 为什么 export 导出一个字面量会报错,而使用 export default 就不会报错?
    核心其实总的来说就是export导出的是变量的句柄(或者说符号绑定、近似于C语言里面的指针,C++里面的变量别名),而exportdefault导出的是变量的值。需要注意的是:模块里面的内容只能在模块内部修改,模块外部只能使用。esModule在语法层面做了一层浅层的保护(即将import导入的变量......
  • C#中DataGrid导出Excel文件
    privatevoidbtnExport_Click(objectsender,RoutedEventArgse){System.Diagnostics.Stopwatchsw=newSystem.Diagnostics.Stopwatch();sw.Start();grid.SelectAllCells();grid.ClipboardCopyMod......
  • 纯前端调用原生Office实现Web在线编辑Word/Excel/PPT,支持私有化部署
    在日常协同办公过程中,一份文件可能需要多次重复修改才能确定,如果你发送给多个人修改后再汇总,这样既效率低又容易出错,这就用到网页版协同办公软件了,不仅方便文件流转还保证不会出错。但是目前一些在线协同Office属于模拟Office,在线模拟OFFICE编辑过的文档,再用本机Office编辑都存在......
  • 换机技巧:IDEA如何导出/导入设置
    背景最近新换了电脑,因为之前是Intel芯片的Mac,这次换了arm架构的M芯片的Mac,旧Mac上的很多软件不兼容,所以就没有选择换机数据迁移,一点一点下载、配置了所有环境。导出IDEA支持设置的导入导出,这就省去了很多繁琐的更改设置步骤。首先打开IDEA,点击File--ManageIDESettings......
  • python处理excel,删除行和列+去除重复列
    删除指定的行与列点击查看代码importxlwingsasxw#下載下來的Excel,列和行有很多空白的,要先刪除掉.#打开Excel文件workbook=xw.Book('test.xlsx')sheet=workbook.sheets[0]#删除1-12行sheet.range('1:12').api.EntireRow.Delete()#删除A-G列sheet.range(......
  • Python+openpyxl 拆分Excel合并的单元格
    图片数据是举例子。在实际使用中,从需求网页上下载的生产资料是带有合并单元格的,但在处理的时候需要拆分开,不然不好操作。使用openpyxl可以实现操作如果没有安装openpyxl库,首先安装openpyxl在命令行执行pipinstallopenpyxl点击查看代码importopenpyxlpath=r"test.......
  • python + xlwings 根据条件筛选Excel里的所需资料
    实际有用,有效,满足我的个人需要。点击查看代码importxlwingsasxwdeffiler():try:app=xw.App(visible=False,add_book=False)app2=xw.App(visible=False,add_book=True)wb=app.books.open('new_file.xlsx')#打开原始数据表......
  • EXCEL入门,从认识界面开始
    目录一、工作簿和工作表二、功能区和选项卡三、单元格的名称和内容四、区域及选择方法五、对象和上下文选项卡。         六、问题一:有些工作表为什么找不着?二:我的功能区怎么不见了?三:为什么有些功能我的excel里没有?一、工作簿和工作表整个excel文件称为......
  • Pr软件支持什么视频格式?可以导入哪些格式的视频素材文件
    某些文件扩展名(如MOV、AVI和MXF)是指容器文件格式,而不是特定的音频、视频或图像数据格式。容器文件可以包含使用各种压缩和编码方案编码的数据。PremierePro可以导入这些容器文件,但是否能导入其中包含的数据,则取决于安装的编解码器(尤其是解码器)。支持的序列、静止图像......
  • 论文研读(含2G的CSI数据集+导入数据的代码):CSI-Former: Pay More Attention to Pose Est
    论文概述本文提出了一种新的基于WiFi的姿态估计方法。基于WiFi的信道状态信息(CSI),提出了一种新的结构CSI-former。为了评估CSI-former的性能,本文建立了一个新的数据集Wi-Pose。该数据集由5GHzWiFiCSI、相应的图像的骨架点注释组成。背景Transformer由于其强大的多头注意力......