系列文章之四 用shell结合node.js批量转换excel工具(2)
2016-07-21 23:55
609 查看
源代码发布在github上:https://github.com/linyouhappy/kongkongxiyou
convertData.command就是excel转换成json工具。现在对其源代码进行解释
整个原理就是利用xls-to-json库取出数值,再转行成json。
由于xls-to-json在高级版本会出错。故在特意为它准备一个低版本的node程序。xx/exceldata/node
这个node程序专用于这个地方。
转换node工具的入口是xx/exceldata/app.js
鼠标点击convertData.command文件,就可以自动把excel表转换的json文件同时拷贝到客户端和服务端工程。
convertData.command就是excel转换成json工具。现在对其源代码进行解释
#取当前脚本所在的文件夹的完整路径 CURRENT_DIR=`dirname $0` #cd到exceldata目录,xx/exceldata就是excel表配置所在位置。策划配置游戏所有数值在这里配置, cd $CURRENT_DIR/exceldata #exceldata目录下有一个node.js程序,转换excel表格 $CURRENT_DIR/exceldata/node app
整个原理就是利用xls-to-json库取出数值,再转行成json。
由于xls-to-json在高级版本会出错。故在特意为它准备一个低版本的node程序。xx/exceldata/node
这个node程序专用于这个地方。
转换node工具的入口是xx/exceldata/app.js
var xls_json = require('xls-to-json'); var fs = require('fs'); //定义excel表格的目录 var dataDir=__dirname+"/excelData/"; //客户端工程的json配置文件路径,完整路径 var publicDir="xx/cocosjs/src/config/"; //服务端工程的json配置文件路径,完整路径 var serverPublicDir="xx/lordofpomelo/game-server/config/data/"; var files = fs.readdirSync(dataDir); for(var key in files) { var file=files[key]; //判断是否为xls文件 var searchIndex=file.lastIndexOf(".xls"); if(searchIndex>0 && file.length-4===searchIndex) { var fileName=file.substring(0,searchIndex); var outputName=publicDir+fileName+".js"; var serverOutputName=serverPublicDir+fileName+".json"; var inputName=dataDir+file; xls_json({ input: inputName, dataName:fileName, output:outputName, soutput:serverOutputName }, function(err, result) { if(err) { console.error(err); } else { console.log(result); } }); } }
鼠标点击convertData.command文件,就可以自动把excel表转换的json文件同时拷贝到客户端和服务端工程。
相关文章推荐
- android wifi 无线调试
- 使用 HTTP 上传 G 级的文件之 Node.js 版本
- 运维入门
- 动态清空 nohup 输出文件
- install scrapy with pip and easy_install
- 使用Python生成Excel格式的图片
- mongo实现消息队列
- Node.js压缩web项目中的js,css和图片
- Excel 曝出 Power Query 安全漏洞,1.2 亿用户易受远程 DDE 攻击
- Linux Shell常用技巧
- Shell 脚本编程陷阱
- node连接mysql数据库
- 使用 Node.js 构建交互式命令行工具
- async.js 学习记录
- 异步流程控制:7 行代码学会 co 模块
- 新时代编辑神器:Atom
- rem : web app适配的秘密武器
- jquery高级应用之Deferred对象
- ndm:NPM 的桌面 GUI 程序
- VBA将excel数据表生成JSON文件