首先转换成json,不废话直接代码:

local temp = require(tableName)local function table2json(t)--将表格转换为jsonlocal function serialize(tbl)local tmp = {}for k, v in pairs(tbl) dolocal 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 + 1] = key and value and tostring(key) .. tostring(value) or nilendif table.maxn(tbl) == 0 thenreturn "{" .. table.concat(tmp, ",") .. "}"elsereturn "[" .. table.concat(tmp, ",") .. "]"endendassert(type(t) == "table")return serialize(t)endlocal function appendFile(fileName, content)local f = assert(io.open(fileName, 'w'))f:write(content)f:close()endappendFile('itemtable.json', table2json(temp))--temp就是要转换的数据

接下来是转换成xml:

--this is luatoxml
local M = {}
local indentation = ""function M.ToXmlString(value)value = string.gsub(value, "&", "&amp;"); -- '&' -> "&amp;"value = string.gsub(value, "<", "&lt;"); -- '<' -> "&lt;"value = string.gsub(value, ">", "&gt;"); -- '>' -> "&gt;"value = string.gsub(value, "\"", "&quot;"); -- '"' -> "&quot;"return value;
endfunction M.toxml(value)local xml = ""local t = type(value)if t == "string" thenxml = xml .. indentation .. "<" .. value .. "/>\n"elseif t == "table" thenfor name, data in pairs(value) doif type(name) == "number" and type(data) == "table" thenxml = xml .. "<entry>"xml = xml .. M.toxml(data)xml = xml .. "</entry>"elseif type(data) == "table" thenlocal arr = truefor kk, vv in pairs(data) doif type(kk) ~= "number" thenarr = falsebreakendendlocal sssss = ""if arr thenfor g = 1, #data doif type(data[g]) == "table" thenfor gg = 1, #data[g] dosssss = sssss .. data[g][gg] .. ","endelsesssss = sssss .. data[g] .. ","endendelsefor kk, vv in pairs(data) dosssss = sssss .. vv .. ","endendxml = xml .. indentation .. "<" .. name .. ">"xml = xml .. sssssxml = xml .. indentation .. "</" .. name .. ">\n"elsexml = xml .. indentation .. "<" .. nameif type(data) == "table" thenlocal children = {}local number_strings = {}for k, v in pairs(data) dolocal vtype = type(v)local ktype = type(k)if vtype == "table" thenchildren[k] = velseif ktype == "string" thenxml = xml .. " " .. k .. '="' .. tostring(v) .. '"'elseif ktype == "number" and vtype == "string" thentable.insert(number_strings, v)endendif next(children) ~= nil or #number_strings > 1 thenxml = xml .. ">\n"indentation = indentation .. "\t"xml = xml .. M.toxml(children)xml = xml .. M.toxml(number_strings)indentation = indentation:sub(1, #indentation - 1)xml = xml .. indentation .. "</" .. name .. ">\n"elseif #number_strings == 1 thenxml = xml .. ">" .. number_strings[1] .. "</" .. name .. ">\n"elsexml = xml .. "/>\n"endendelseif string.find(tostring(data), "<") ~= nil thenxml = xml .. ">" .. M:ToXmlString(data) .. "</" .. name .. ">\n"elsexml = xml .. ">" .. tostring(data) .. "</" .. name .. ">\n"endendendendreturn xml
endreturn M
local luatoxml = require "luatoxml"local tableName = "表名"local temp = require(tableName)f = assert(io.open("luaToxml/" .. tableName .. '.xml', 'w'))--转换后的xml名字,存放路径f:write('<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>')f:write('<LocalDatas xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\">')f:write(luatoxml.toxml(temp))f:write("</LocalDatas>")f:close()

将lua数据表格 转换成json格式,xml格式相关推荐

  1. EXCEL表格转换成json数据工具

    请先下载phpexcel插件后在使用如下代码运行 phpexcel插件下载地址:http://www.chtml.cn/topic/show/40 实例代码: <!DOCTYPE HTML PU ...

  2. node-js——将excel表格转换成json文件

    文章目录 将excel表格转换成json文件 步骤 一.引用nodejs的xlsx模块,读取表格的数据 二.引入fs模块,创建文件并写入 三.写一个bat脚本,双击自动执行nodejs文件 示例文件下 ...

  3. badatatable转成json_数据表转换成json(DatatableToJson)

    #region 转换Table为JSON数据 /// /// 转换Table为JSON数据 /// /// /// public static string TableToJson(DataTable ...

  4. 将Ajax请求返回的json数据,转换成json对象

    var json = eval("("+data+")");//将json类型字符串转换为json对象 注:https://www.cnblogs.com/yu ...

  5. 从数据库查询出来的数据集合转换成 json 类型

    2019独角兽企业重金招聘Python工程师标准>>> java ---------------------------------------------------------- ...

  6. PJBlog的文章转换成BlogEngine的xml格式文章

    我原来的博客系统一直都是用pjblog的,现在想趁热闹,改用BlogEngine. 所以就搞了这么一个小东西,可以把原来pjblog的文章转成BlogEngine的文章. 程序好简单的,也不好意思再作 ...

  7. 普通数组如何转换成json数据格式

    我们都知道json有很多种格式,而开发过程中经常遇到格式转换的问题,特别是接口调用的时候,如何将普通数组转成我们需要的json格式呢,下面我提供了一种方法,也是一种思路,希望对大家有所帮助!! (大前 ...

  8. 盘点机数据怎么转换成电脑盘点系统的数据

    若是该物联宇手持终端是针动该POS系统配备的,先把盘点机生成的盘点数据文件复制到POS系统电脑上,然后在POS系统盘点界面应该有类似"数据导入"的功能,选择该数据文件导入. 否则需 ...

  9. Jquery 将后台返回的字符串转换成Json格式的数据

    //code by:博客园-曹永思 第一步:将DataTable转换成 Json格式的数据 方法 一 View Code /// <summary>/// DataTable转成Json格 ...

最新文章

  1. Gson:我爸是 Google
  2. 渝北统景碑口规划开发_渝北将又添“大水缸”御临河上将形成2.9平方公里人工湖面...
  3. xp 不能上传邮件附件的解决办法
  4. PHP服务器时间差8小时解决方案
  5. Docker logs 查看实时日志(日志最后的N行、某刻后日志)
  6. ASP .NET Core 2.0 MVC 发布到 IIS 上以后 无法下载apk等格式的文件
  7. kubernetes视频教程笔记 (33)-什么是 Helm
  8. DroidCam通过数据线调用手机摄像头的方法一
  9. 常州市行政地图矢量高清pdf区划彩色大图cdr或ai2020年
  10. xign跨平台游戏引擎演示
  11. ChatGPT突遭大面积封号!网友应急出解封教程
  12. MySQL --alter table的使用
  13. Loadrunner11.00破解方法
  14. import上一级目录的模块(Python)
  15. Linux中/proc/pid/status信息含义
  16. 两个小工具反编译微信(PC)小程序源码
  17. arp miss攻击_S交换机有ARP Miss告警,怎么办?
  18. 正则表达式测试器eRegex (for Mac Win)
  19. 大数据营销系统真的靠谱吗?
  20. Games 图形学 L11

热门文章

  1. python 支持的数据库_1.16 Python的数据库支持 - Python 全栈
  2. tSNE-python代码实现及使用讲解
  3. 什么是架构?网络架构中都有什么?
  4. KNN算法数据归一化处理(持续更新中)
  5. sitemesh 了解
  6. 易烊千玺现场献唱,华为nova 3引爆年轻市场
  7. Springboot Mybatis使用pageHelper实现分页查询
  8. chrome浏览器保存mht网页文件的方法
  9. 我的2011年总结--大明zeroson程序员一周年总结
  10. UVa 10167 生日蛋糕