最新国产好看的视频,伊人天堂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格式進行保存或分享,所以下面我們就來學(xué)習(xí)一下如何通過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、導(dǎo)入模塊

  • 首先,通過require導(dǎo)入了json2xlsfs和一個自定義的 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ù)分析

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

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

  • 創(chuàng)建一個空數(shù)組jsonData,用于存儲最終要轉(zhuǎn)換為 Excel 的數(shù)據(jù)。
  • 使用for...in循環(huán)遍歷導(dǎo)入的 JSON 對象(假設(shè)這個 JSON 對象的結(jié)構(gòu)是以地市為鍵,對應(yīng)區(qū)縣的數(shù)組為值)。
  • 對于每個地市,獲取其對應(yīng)的區(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");

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

相關(guān)文章

最新評論

建宁县| 南华县| 丹凤县| 枣强县| 海原县| 葫芦岛市| 克山县| 安陆市| 清远市| 五台县| 福安市| 竹溪县| 宁南县| 公安县| 五家渠市| 乌拉特中旗| 嘉定区| 蛟河市| 泾阳县| 揭西县| 兰考县| 青冈县| 连州市| 堆龙德庆县| 东至县| 洛阳市| 彝良县| 阜城县| 达拉特旗| 新安县| 宽甸| 元朗区| 筠连县| 噶尔县| 沙坪坝区| 盐山县| 扬中市| 耿马| 榆林市| 陆河县| 西乡县|