lua的table转为excel表格的方法
项目中需要用到转表工具,由于没有直接的转表工具,而且嵌套的table(table里面嵌套了多层表格与数组)。无奈之下,只好采用折衷的方法,先将table表格转为json数据,再用在线转表工具将json转为excel表格。
第一步,下载lua解释器,关于解释器的链接我会放到后文。然后编写lua脚本,主要代码如下(这里引用了http://haiyi.iteye.com/blog/480185的方法,处理table中信息的方法可以自己写)。然后写了个存储为txt的脚本,具体方法如下(参考https://blog.csdn.net/forestsenlin/article/details/50776417):
function table2json(t)--将表格转换为json
local function serialize(tbl)
local tmp = {}
for k, v in pairs(tbl) do
local k_type = type(k)
local v_type = type(v)
local key = (k_type == "string" and "\"" .. k .. "\":")
or (k_type == "number" and "")
local value = (v_type == "table" and serialize(v))
or (v_type == "boolean" and tostring(v))
or (v_type == "string" and "\"" .. v .. "\"")
or (v_type == "number" and v)
tmp[#tmp + ] = key and value and tostring(key) .. tostring(value) or nil
end
if table.maxn(tbl) == then --这句话已经过时,但是删除的话会导致后期需要手动修改一下
return "{" .. table.concat(tmp, ",") .. "}"
else
return "[" .. table.concat(tmp, ",") .. "]"
end
end
assert(type(t) == "table")
return serialize(t)
end
function appendFile(fileName,content)
local f = assert(io.open(fileName,'a'))
f:write(content)
f:close()
end
appendFile('poor_reward.txt',table2json(poor_reward))--poor_reward是自定义的表
这是两个核心的代码,具体操作可以自己处理,最后在最外层调用即可。这里有个麻烦的事情就是调用lua解释器,我是用cmd的方法调用:
第一步:win+r打开cmd命令,先写入盘,然后打开目录:

第二步:点击dir查看文件扩展名之类的信息,这个并不一定。

第三步:写入解释器与运行文件名,点击运行。以后想再次调用的时候,直接点击方向键的上键就可以了。这里是运行文件(cmd命令不识别中文,所以下面是乱码。大致逻辑就是将文件显示出来,然后保存到本地):

然后最好用在线json解析工具解析一下,查看json格式是否正确。最后用在线json转excel转一下,这个是在线解析工具:http://j2e.kpoda.com/。
lua的table转为excel表格的方法的更多相关文章
- ASP如何将table导出EXCEL表格
网页导出excel表格非常常用,对于一些加载<table>的数据网页,经常会用到这种功能,下面和大家分享一下ASP如何导出EXCEL表格 工具/原料 ASP编辑器 方法/步骤 ...
- 如何将mysql表结构导出成Excel格式的(并带备注)另附转为word表格的方法
方法一: 1.使用一个MySQL管理工具:SQLyog,点击菜单栏“数据库”下拉的最后一项: 导出的格式如下: 2.要想转成Excel格式的只需手动将该表复制到Excel中去. 方法二: 1.以下用的 ...
- lua中 table 重构index/pairs元方法优化table内存占用
转载请标明出处http://www.cnblogs.com/zblade/ lua作为游戏的热更新首选的脚本,其优势不再过多的赘述.今天,我主要写一下如何重写lua中的元方法,通过自己的重写来实现对l ...
- <转>HTML中的table转为excel
转换html 中的table 为excel,firefox浏览器支持,代码如下 <%@ page language="java" contentType="text ...
- Python读取Json字典写入Excel表格的方法
需求: 因需要将一json文件中大量的信息填入一固定格式的Excel表格,单纯的复制粘贴肯定也能完成,但是想偷懒一下,于是借助Python解决问题. 环境: Windows7 +Python2.7 + ...
- element ui table 导出excel表格
https://blog.csdn.net/u010427666/article/details/79208145 vue2.0 + element UI 中 el-table 数据导出Excel1. ...
- Table生成Excel表格
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- JS导入导出Excel表格的方法
https://blog.csdn.net/aa122273328/article/details/50388673 导出 https://blog.csdn.net/qq_37281252/arti ...
- Java代码导入导出 Excel 表格最简单的方法
import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStrea ...
随机推荐
- windows配置远程桌面连接到ubuntu
最近在用nodejs开发项目,同时也在做一些区块链相关的工作,公司给配的办公电脑着实不错,都是自家品牌的工作站,市场价都是15K+了.但是在win10上装虚拟机,还是不太顺畅的.因为公司电脑是五年到期 ...
- [UE4]Slider
Slider:滑动条 一.Slider.Bar Thickness:滑动条厚度 二.Slider.Appearance.Step Size:每次滑动的步进值 三.Slider.Appearance.V ...
- [sql]sql函数coalesce返回第一个非空的值
下面来看几个比较有用的例子: 首先,从MSDN上看看这个函数的使用方法,coalesce函数(下面简称函数),返回一个参数中非空的值.如: SELECT COALESCE(NULL, NULL, G ...
- python函数嵌套定义
python的这个特性是很特别的,与C#和C++都不一样.请看下面的例子 def outFun(): def innerFun_0():#1.在内部定义一个函数 print("i am fi ...
- Struts2 <s:select >标签的使用
select 取值session中的内容 <s:select name="meal.mealseries.seriesid" list="#session.meal ...
- Promise事件比timeout优先
Promise, setTimeout 和 Event Loop 下面的代码段,为什么输出结果是1,2,3,5,4而非1,2,3,4,5?(function test() { setTimeout(f ...
- BeanUtils接口和类
Jakarta Commons项目提供了相当丰富的API,我们之前了解到的Commons Lang只是众多API的比较核心的一小部分而已.Commons下面还有相当数量的子项目,用于解决各种各样不 ...
- Bash常用快捷键及其作用
在 Bash 中有非常多的快捷键,如果可以熟练地使用这些快捷键,可有效地提高我们的工作效率.只是快捷键相对较多,不太好记忆,这就要多加练习和使用.这些快捷键如表 1 所示. 表 1 Bash 常用快捷 ...
- 转载:指针delete后要设置为NULL
本文来自:http://rpy000.blog.163.com/blog/static/196109536201292615547939/ 众所周知,最开始我们用new来创建一个指针,那么等我们用完它 ...
- python 在window 系统 连接并操作远程 oracle 数据库
1,python 连接 oracle 需要 oracle 自身的客户端 instantclient,可以去官网下载自己需要的版本, https://www.oracle.com/technetwor ...