如何在TypeScript中将JSON数据转换为.xlsx文件
TypeScript 实现 JSON 转 Excel (.xlsx) 文件
步骤1:安装依赖
使用SheetJS的xlsx库(自带TypeScript类型定义),直接执行安装命令:
npm install xlsx
步骤2:编写TypeScript代码
以下是完整实现代码,包含类型定义、数据转换和文件生成逻辑:
import * as XLSX from 'xlsx'; // 定义数据类型,符合TypeScript类型规范 interface UserData { email: string; industry: string; role: string; firstName: string; lastName: string; title: string; country: string; } // 你的JSON数据源 const JsonData: UserData[] = [ { "email": "abc@gmail.com", "industry":"IT", "role": "Developer", "firstName": "Shubham", "lastName": "Verma", "title": "Software Engineer", "country": "India" }, { "email": "XYG@gmail.com", "industry":"IT", "role": "Developer", "firstName": "Ankit", "lastName": "Kumar", "title": "Software Engineer", "country": "India" } ]; // 1. 创建空工作簿 const workbook = XLSX.utils.book_new(); // 2. 将JSON转换为工作表(可选自定义表头顺序) // 若需指定表头顺序,取消下面两行注释,注释默认转换行 // const customHeaders = ["firstName", "lastName", "email", "title", "role", "industry", "country"]; // const worksheet = XLSX.utils.json_to_sheet(JsonData, { header: customHeaders }); const worksheet = XLSX.utils.json_to_sheet(JsonData); // 3. 将工作表添加到工作簿,命名为"用户数据" XLSX.utils.book_append_sheet(workbook, worksheet, "用户数据"); // 4. 生成并保存.xlsx文件 XLSX.writeFile(workbook, "用户数据.xlsx"); console.log("Excel文件生成完成!");
步骤3:运行代码
如果使用ts-node直接运行:
ts-node your-file-name.ts
或者先编译为JavaScript再运行:
tsc your-file-name.ts node your-file-name.js
关键说明
xlsx库原生支持TypeScript,无需额外安装@types类型包json_to_sheet方法会自动处理JSON结构,将对象键作为表头,值作为单元格内容- 自定义表头顺序可以避免因对象键顺序不一致导致的表头混乱
内容的提问来源于stack exchange,提问作者Shubham Verma
相关产品推荐
相关产品推荐

