-
xlsx:用于处理Excel文件。 -
xlsx-style:用于添加样式到Excel文件中。 -
file-saver:用于将生成的Excel文件保存到用户的计算机上npm install xlsx xlsx-style file-saver
// 导入所需库
const XLSX = require('xlsx');
const XLSXStyle = require('xlsx-style');
const FileSaver = require('file-saver');// 示例JSON数据
const jsonData = [
{ name: 'Alice', age: 25 },
{ name: 'Bob', age: 30 },
{ name: 'Charlie', age: 28 }
];// 创建一个工作簿
const wb = XLSX.utils.book_new();
const wsName = 'Sheet1';// 将JSON数据转换为工作表
const ws = XLSX.utils.json_to_sheet(jsonData, { header: ['name', 'age'] });// 设置标题字体样式
const titleCellStyle = { font: { bold: true } };
ws[XLSX.utils.encode_cell({ r: 0, c: 0 })].s = titleCellStyle;// 将工作表添加到工作簿
XLSX.utils.book_append_sheet(wb, ws, wsName);// 将工作簿转换为二进制数据
const wbout = XLSXStyle.write(wb, { bookType: 'xlsx', bookSST: false, type: 'binary' });// 将二进制数据保存为Excel文件
const blob = new Blob([s2ab(wbout)], { type: 'application/octet-stream' });
FileSaver.saveAs(blob, 'data.xlsx');// 辅助函数:将字符串转换为ArrayBuffer
function s2ab(s) {
const buf = new ArrayBuffer(s.length);
const view = new Uint8Array(buf);
for (let i = 0; i < s.length; i++) {
view[i] = s.charCodeAt(i) & 0xFF;
}
return buf;
}
xlsx xlsx-style file-saver 导出json数据到excel文件并设置标题字体加粗
山小雨2023-08-19 20:10
相关推荐
电商API&Tina1 小时前
比价 / 选品专用:京东 + 淘宝 核心接口实战(可直接复制运行)全栈开发圈4 小时前
新书速览|Excel+DeepSeek会计与财务高效办公进击的雷神5 小时前
攻克JSON嵌套HTML的双重解析难题:基于多层数据提取的精准爬虫设计进击的雷神5 小时前
攻克JSON接口分页与对象数组处理:基于AJAX数据源的精准博客爬虫设计ew452187 小时前
【java】基于hutool实现.Excel导出任意多级自定义表头数据SunnyDays10117 小时前
使用 Python 在 Excel 中应用数据验证:详细指南开开心心就好8 小时前
模拟真人手写软件,支持随机调节不会写DN8 小时前
Go 生态最快 JSON 库 - jsoniterKevinCyao8 小时前
批量发短信接口的数据格式设计:CSV、JSON还是XML?电商API&Tina8 小时前
主流跨境平台多站点 API 接入流程:淘宝天猫京东API接口