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 ...
随机推荐
- 20165312 2017-2018-2《JAVA程序设计》第7周学习总结
20165312 2017-2018-2<JAVA程序设计>第7周学习总结 一.对上周测试的查漏补缺 总的来说,我觉得上周两个测试都挺难的,做测试也花费了很长的时间,我认为是因为书上的知识 ...
- 知识点:spring 完全手册
什么是spring spring是一个开源框架,为简化企业级开发而生,使用spring可以使简单的java bean 实现以前只有EJG才能实现的功能. Spring是一个轻量级的控制反转(IoC)和 ...
- 向量的卷积(convolution)运算
一.向量的卷积运算 给定两个n维向量α=(a0, a1, ..., an-1)T,β=(b0, b1, ..., bn-1)T,则α与β的卷积运算定义为: α*β=(c0, c1, ..., c2n- ...
- mysql Mac篇
默认为mysql下载和安装完毕,安装为默认安装 下载地址:https://dev.mysql.com/downloads/file/?id=473576 1.启动mysql sudo /usr/loc ...
- k8s学习笔记之三:k8s快速入门
一.前言 kubectl是apiserver的客户端工具,工作在命令行下,能够连接apiserver上实现各种增删改查等各种操作 kubectl官方使用文档:https://kubernetes.io ...
- 记一次KUBERNETES/DOCKER网络排障
https://coolshell.cn/articles/18654.html 总结在前面: 1.kill -9杀死docker进程,系统一定是要遍历所有的docker子进程来一个一个发退出信号的, ...
- redis消息通知(任务队列/优先级队列/发布订阅模式)
1.任务队列 对于发送邮件或者是复杂计算这样的操作,常常需要比较长的时间,为了不影响web应用的正常使用,避免页面显示被阻塞,常常会将此类任务存入任务队列交由专门的进程去处理. 队列最基础的方法如下: ...
- nodejs server websocket
var WebSocketServer = require('websocket').server; var http = require('http'); var server = http.cre ...
- grep -A -B -C 显示抓取的前后几行参数
我经常用grep找东西,比如用户名和密码.大部分站点和用户名和密码都是在一样的,方便grep查找.有时,为了文本好看,我会放在多行.比如 wikipedia多个语言版本上有多个账号,就放在wikipe ...
- leetcode647
class Solution { public: ][],int i,int j){ if(i>=j){ return true; } else{ return DP[i][j]; } } in ...