NodeJS JSON数据转为CSV存入文件
注意 :导出数据值 null 与 "" 之间的区别
1. 执行代码
// 用到的类库
const fs = require('fs-extra') // 文件读写
const Json2csvParser = require('json2csv').Parser; // 数据格式转换
const iconv = require('iconv-lite'); // 数据编码转换
const path = require('path')
// 列头与数据
const fields = ['car', 'price', 'color', 'for', 'aaa'];
const data = [
{
car: 'Audi',
price: 40000,
color: 'blue',
for: null,
aaa: ''
}, {
car: 'BMW',
price: 35000,
color: 'black',
for: null,
aaa: ''
}, {
car: 'Porsche',
price: 60000,
color: 'green',
for: null,
aaa: ''
}
]
// 接口数据转换
const json2csvParser = new Json2csvParser({fields});
const csv = json2csvParser.parse(data);
console.log(csv);
// 数据编码调整
const csvBuf = new Buffer(csv);
const str = iconv.decode(csvBuf, 'utf-8');
const str2 = iconv.encode(str, 'gbk');
// 文件导出
const file = `\\records\\${Date.now()}.csv`;
const filePath = path.resolve('./') + file
fs.outputFileSync(filePath, str2);
2. 导出结果
"car","price","color","for","aaa"
"Audi",40000,"blue",,""
"BMW",35000,"black",,""
"Porsche",60000,"green",,""
标签:
JavaScript
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异