加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

序列化 – 序列化lua表的方法

发布时间:2020-12-15 00:25:15 所属栏目:大数据 来源:网络整理
导读:我可能错过了这个,但有没有内置的方法将lua表序列化/反序列化为文本文件,反之亦然? 我有一对方法来在具有固定格式的lua表上执行此操作(例如,3列数据,5行). 有没有办法在任何格式的lua表上执行此操作? 举个例子,给出这个lua表: local scenes={ {name="scnS
我可能错过了这个,但有没有内置的方法将lua表序列化/反序列化为文本文件,反之亦然?

我有一对方法来在具有固定格式的lua表上执行此操作(例如,3列数据,5行).

有没有办法在任何格式的lua表上执行此操作?

举个例子,给出这个lua表:

local scenes={
    {name="scnSplash",obj={
            {
                name="bg",type="background",path="scnSplash_bg.png",},{
                name="bird",type="image",path="scnSplash_bird.png",x=0,y=682,}
    },}

它将被转换为这样的文本:

{name="scnSplash",obj={{name="bg",{name="bird",}},}

只要文本字符串可以反序列化为空的lua表,就可以以任何方式定义序列化文本的格式.

解决方法

我不确定为什么JSON库被标记为正确答案,因为它似乎在序列化“任意格式的lua表”时非常有限.它不将boolean / table / function值作为键处理,也不处理循环引用.共享引用未序列化为共享引用,并且math.huge值未在Windows上正确序列化.我意识到其中大多数都是JSON限制(因此在库中以这种方式实现),但这被提议作为通用Lua表序列化的解决方案(事实并非如此).

通过使用TableSerialization页面或我的Serpent serializer and pretty-printer中的一个实现,可以更好.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读