Excel 转 Json 、Node.js实现(应用场景:i18n国际化)

创作灵感来源于在线转换是按照换行符去转换excel内容换行符后很难处理 本文是按单元格转换
javascript 复制代码
const xlsx = require('node-xlsx')
const fs = require('fs')
const xlsxData = xlsx.parse('./demo.xlsx') // 需要转换的excel文件

// 数据处理 方便粘贴复制
const data = xlsxData[2].data  // [index] 对应 sheet 页
const len = data.length
const outData_zh = {
} // 中文
const outData_en = {
} // 英文
const outData_id = {
} // 印尼文
for (let i = 0; i < len; i++) {
  // 2.数据处理
  const item = data[i]
  outData_zh[item[0]] = item[1]
  outData_en[item[0]] = item[2]
  outData_id[item[0]] = item[3]
}
const outData = {
  cn: outData_zh,
  us: outData_en,
  id: outData_id
}

writeFile('result.json', JSON.stringify(outData)) // 输出的json文件
function writeFile(fileName, data) {
  fs.writeFile(fileName, data, 'utf-8', complete)  // 文件编码格式 utf-8
  function complete(err) {
    if (!err) {
      console.log('文件生成成功')  // 输出完成
    }
  }
}

需转换文件 第一列作为 key 二三四列作为 value 分别对应中 英 印三种语言

输出结果:

相关推荐
梨子同志1 分钟前
ES6 let 和 const
前端·javascript
远方160924 分钟前
16-Oracle 23 ai-JSON-Relational Duality-知识准备
数据库·oracle·json
前端小白佬28 分钟前
【JS】事件传播--事件捕获/冒泡
javascript·面试
PasserbyX38 分钟前
ES6 WeakMap 生效的证明: FinalizationRegistry
前端·javascript
努力学习的小刘40 分钟前
如何使用react-router实现动态路由
前端·javascript
PasserbyX40 分钟前
JS原型链
前端·javascript
Danta1 小时前
从0开始学习three.js(1)😁
前端·javascript·three.js
coderYYY1 小时前
element树结构el-tree,默认选中当前setCurrentKey无效
前端·javascript·vue.js
GISer_Jing1 小时前
Three.js中AR实现详解并详细介绍基于图像标记模式AR生成的详细步骤
开发语言·javascript·ar
GISer_Jing2 小时前
[总结篇]个人网站
前端·javascript