excel是我们工作及生活当中不可或缺的东西,好吧,我是一个游戏程序员,数值哥哥肯定会给我些表格的。回归正题,为什么需要做这个封装?
- 为什么需要这个项目,因为我们需要使用程序进行自动化操作
- VBA我们不熟悉,而且我必须使用我最熟悉的lua或者是python,由于lua的运行环境更简单,直接文件拷贝一下直接用,所以就他了lua
- lua如果操作excel可以使用luacom,但是我们并不是那么熟悉com结构,更何况还多了一个lua的环境
- luacom操作excel有一些坑,性能如果没有注意的话,简直等于不堪入目,所以我们必须要寻找合理的方式
总之:我们要实现,用lua的方式(table)高效的读写excel,所以我设计了这么关键接口,而不用去了解luacom及excel的接口操作,以下就是相关几个接口
详见项目地址:
https://github.com/linbc/lua-excel-tools
另附解决excel常见问题的做法:
- 将所有的dll及exe放入目录中,无须安排运行环境
- 通过将数据组织成tab分隔的一列及 换行符为一行的方式,并且使用windows粘贴版进行进程数据同步,大大提高设置单元格的性能
- 经常碰到的中文乱码问题使用iconv进行GBK到UTF8的转换,搞定
- 通过批量获得格子数据的方式提高性能,但由于量太大会崩溃,所以引入分页获取的机制
- TODO:下一步可以能过windows粘贴版的方式获得数据,然后分析文本应该可以更进一步提高性能