您好,登錄后才能下訂單哦!
這篇文章主要講解了“Node.js中JSON格式和Excel格式的雙向轉(zhuǎn)換方法”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“Node.js中JSON格式和Excel格式的雙向轉(zhuǎn)換方法”吧!
利用 fs 模塊讀入數(shù)據(jù)并使用JSON.parse()
方法轉(zhuǎn)換格式
遍歷數(shù)據(jù),處理得到 Object
利用 json2xls 模塊轉(zhuǎn)換 Object 得到變量,利用 fs 模塊寫出 Excel
參考 nodeJS把json數(shù)據(jù)轉(zhuǎn)成excel(xlsx文件)輸出 的例子,借助其需求:網(wǎng)站爬蟲爬取到的數(shù)據(jù)轉(zhuǎn)換為 Excel 文件:
data.json
result.xlsx
需要引入的 npm
包有 fs
、json2xls
const fs = require('fs') const json2xls = require('json2xls'); fs.readFile('data.json','utf8',(err,data)=>{ if (err) throw err; const json = JSON.parse(data); const jsonArray = []; json.forEach(function(item){ let temp = { '類型' : item.type, '問題' : item.question, '選項(xiàng)' : item.answers, '答案' : item.trueAnswer } jsonArray.push(temp); }); let xls = json2xls(jsonArray); fs.writeFileSync('result.xlsx', xls, 'binary'); })
讀取本地 Excel 文件到變量暫存;
處理變量數(shù)據(jù);(根據(jù)各自需求處理)
處理后的數(shù)據(jù)寫入本地 JSON 文件
參考 Node.js excel轉(zhuǎn)json 文章,借助其需求:把 data.xlsx
文件轉(zhuǎn)換成 result.json
data.xlsx
result.json
需要引入的 npm
包有 fs
、node-xlsx
,步驟按照上面的三部曲
var xlsx = require("node-xlsx"); var fs = require('fs'); var list = xlsx.parse("raw-data.xlsx"); // 需要轉(zhuǎn)換的excel文件 var data = list[0].data; // 1.讀取json數(shù)據(jù)到變量暫存 var len = data.length; var outData_cn = {}; // 中文 var outData_us = {}; // 英文 for(let i = 0; i < len; i ++){ // 2. 數(shù)據(jù)處理 let item = data[i]; outData_cn[item[0]] = item[1]; outData_us[item[0]] = item[2]; } var outData = { cn: outData_cn, us: outData_us } fs.writeFile("result.json",JSON.stringify(outData),'utf-8',complete); // 3. 數(shù)據(jù)寫入本地json文件 // 輸出的json文件 數(shù)據(jù) 文件編碼格式 完成事件 function complete(err) { if(!err) console.log("文件生成成功"); }
感謝各位的閱讀,以上就是“Node.js中JSON格式和Excel格式的雙向轉(zhuǎn)換方法”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對(duì)Node.js中JSON格式和Excel格式的雙向轉(zhuǎn)換方法這一問題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。