最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

node實現(xiàn)將json轉(zhuǎn)為excel

 更新時間:2024年11月05日 08:25:39   作者:JYeontu  
平時我們寫代碼處理的數(shù)據(jù)格式一般都是json格式的數(shù)據(jù),但有時候我們也需要將數(shù)據(jù)轉(zhuǎn)為excel格式進行保存或分享,所以下面我們就來學習一下如何通過node實現(xiàn)json轉(zhuǎn)excel吧

說在前面

平時我們寫代碼處理的數(shù)據(jù)格式一般都是json格式的數(shù)據(jù),有時候我們也需要將數(shù)據(jù)轉(zhuǎn)為excel格式進行保存或分享,那么我們要怎么將json數(shù)據(jù)轉(zhuǎn)為Excel呢?

比如我們現(xiàn)在有這么一個地市的JSON數(shù)據(jù):

我們需要將其轉(zhuǎn)為Excel:

1、導入模塊

  • 首先,通過require導入了json2xls、fs和一個自定義的 JSON 文件./file/地市區(qū)縣.json
  • json2xls模塊用于將 JSON 數(shù)據(jù)轉(zhuǎn)換為 Excel 文件格式。
  • fs模塊用于文件系統(tǒng)操作,如讀取和寫入文件。
const json2xls = require("json2xls");
const fs = require("fs");
const json = require("./file/地市區(qū)縣.json");

2、數(shù)據(jù)分析

首先我們要先設計好excel表格的列名,我們現(xiàn)在json數(shù)據(jù)的鍵名是地市,鍵值是一個區(qū)縣列表,所以我們可以以地市和區(qū)縣為列名。

3、數(shù)據(jù)處理

  • 創(chuàng)建一個空數(shù)組jsonData,用于存儲最終要轉(zhuǎn)換為 Excel 的數(shù)據(jù)。
  • 使用for...in循環(huán)遍歷導入的 JSON 對象(假設這個 JSON 對象的結(jié)構(gòu)是以地市為鍵,對應區(qū)縣的數(shù)組為值)。
  • 對于每個地市,獲取其對應的區(qū)縣列表list。
  • 使用map方法將區(qū)縣列表轉(zhuǎn)換為一個新的對象數(shù)組objList,其中每個對象包含地市區(qū)縣兩個屬性。
  • 使用擴展運算符push(...objList)將這個新的對象數(shù)組添加到jsonData數(shù)組中。
const jsonData = [];

for (const key in json) {
 const list = json[key];
 const objList = list.map((item) => {
   return {
     地市: key,
     區(qū)縣: item,
   };
 });
 jsonData.push(...objList);
}

4、轉(zhuǎn)換并寫入文件

  • 使用json2xls函數(shù)將處理后的jsonData數(shù)組轉(zhuǎn)換為 Excel 文件格式的數(shù)據(jù),并存儲在xlsData變量中。
  • 使用fs.writeFileSyncxlsData寫入名為output.xlsx的文件中,指定文件寫入模式為binary(二進制模式)。
const xlsData = json2xls(jsonData);
fs.writeFileSync("output.xlsx", xlsData, "binary");

總體來說,就是讀取一個包含地市區(qū)縣信息的 JSON 文件,將其數(shù)據(jù)進行處理,轉(zhuǎn)換為特定的格式(每個對象包含地市和區(qū)縣屬性),然后使用json2xls庫將處理后的 JSON 數(shù)據(jù)轉(zhuǎn)換為 Excel 文件并保存。

完整代碼

const json2xls = require("json2xls");
const fs = require("fs");
const json = require("./file/地市區(qū)縣.json");

const jsonData = [];
for (const key in json) {
  const list = json[key];
  const objList = list.map((item) => {
    return {
      地市: key,
      區(qū)縣: item,
    };
  });
  jsonData.push(...objList);
}
const xlsData = json2xls(jsonData);
fs.writeFileSync("output.xlsx", xlsData, "binary");

到此這篇關于node實現(xiàn)將json轉(zhuǎn)為excel的文章就介紹到這了,更多相關node json轉(zhuǎn)excel內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

最新評論

盖州市| 和田县| 成都市| 崇礼县| 莲花县| 邢台市| 芷江| 乌拉特后旗| 合江县| 六安市| 安仁县| 贡觉县| 五原县| 包头市| 昆山市| 苏尼特右旗| 枝江市| 南昌市| 柳林县| 阜康市| 尼勒克县| 伊金霍洛旗| 临高县| 永嘉县| 巴楚县| 渝北区| 永胜县| 虹口区| 宾阳县| 柯坪县| 娄烦县| 章丘市| 交口县| 长子县| 于都县| 浑源县| 开平市| 武强县| 博湖县| 陵水| 霍林郭勒市|