這個是8月初做的,之前公司項目需要國際化,在項目本地會有兩份json數據,一箇中文的一個英文的,但是公司產品經理提供的數據是excel格式,需要我們自己轉一次。最初幾次數據量不大,一次50條左右,我都是手動的添加了幾次,後來發現不行,每次這麼 搞容易出錯且比較耗時,就寫了這麼一個工具,使用起來效率倍增,啓動運行一下這個項目,然後粘貼複製即可。
其實使用Node.js 把excel轉成json很簡單,就是使用node-xlsx這個npm包就可以了。
大致流程:
1.讀取本地excel文件到變量暫存;
2.處理變量數據;(根據各自需求處理)
3.處理後的數據寫入本地json文件
代碼:
var xlsx = require("node-xlsx");
var fs = require('fs');
var list = xlsx.parse("add.xlsx"); // 需要 轉換的excel文件
// 數據處理 方便粘貼複製
var data = list[0].data; // 1.讀取json數據到變量暫存
var len = data.length;
var outData_cn = {}; // 中文
var outData_us = {}; // 英文
for(var i = 0; i < len; i ++){ // 2.數據處理
var item = data[i];
outData_cn[item[0]] = item[1];
outData_us[item[0]] = item[2];
}
var outData = {
cn: outData_cn,
us: outData_us
}
writeFile("all.json",JSON.stringify(outData)); // 輸出的json文件 3.數據寫入本地json文件
function writeFile(fileName,data)
{
fs.writeFile(fileName,data,'utf-8',complete); // 文件編碼格式 utf-8
function complete(err)
{
if(!err)
{
console.log("文件生成成功"); // 終端打印這個 表示輸出完成
}
}
}