博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
lua 数据以table表的形式存储
阅读量:5885 次
发布时间:2019-06-19

本文共 1184 字,大约阅读时间需要 3 分钟。

hot3.png

  出处:

  感谢,原文作者的无私奉献!

实现思路:

       table表 ------> 转为字符串(这里利用json库)------->存储--------->读取

达成目的:

  • 解决字符串拼接问题

  • 用最简单办法将table表存入文件,方便游戏存档、游戏关卡等等

  •  

第一步:将table表转为json格式的字符串

导入头文件

--2.2.5的quick版本已经在框架载入时完成了json模块的初始化,所以这里就不需要做导入头文件的操作 --local json = require("framework.shared.json")

创建一个表格

 local t = {}                t.test = "OKOK" t.net = "okok" t.inner = {} t.inner.test = "OKOK8888"  --主要使用以下两个方法进行实现 local wirtjson =json.encode(t)--转换成json格式 local readjson =json.decode(wirtjson)--转成原来存储前的格式

注意:以下这两个方法都可以获取到当前电脑上工程的根目录LUA学习笔记-----数据以table表的形式存储

1,device.writablePath  

2device.cachePath  

第二步:写入文件,进行存储并读取

 第一种方法:lua io 库     

把文件保存到当前工程根目录下:

local test = assert(io.open(device.writablePath .. "/formation.lua", "w"))test:write(wirtjson)test:close()

读取整个文件:

 local test = io.open(device.writablePath .. "/formation.lua", "r") local readjson= test:read("*a") local  table =json.decode(readjson) test:close()

 

第二种方法:CCUserDefault

把文件保存到当前工程根目录下:

CCUserDefault:sharedUserDefault():setStringForKey("SaveFightArray1", wirtjson)CCUserDefault:sharedUserDefault():flush()

读取整个文件:

local ecord1 = CCUserDefault:sharedUserDefault():getStringForKey("SaveFightArray1")local table =json.decode(record1)

转载于:https://my.oschina.net/u/223340/blog/382895

你可能感兴趣的文章
解决执行脚本时爆“sqlplus: command not found”的问题
查看>>
使用SQLIO评估数据库磁盘性能
查看>>
在域中配置多元密码策略
查看>>
渗透测试技巧更新4
查看>>
Mysql存储过程中使用cursor
查看>>
IE8 中 session 管理的变化
查看>>
学习Unix怎么安装机器?《精通Unix下C语言与项目实践》读书笔记(14)
查看>>
《从零开始学Swift》学习笔记(Day 21)——函数返回值
查看>>
AD的备份与标准还原:深入浅出Active Directory系列(四)
查看>>
编译可在Android上运行的可执行文件:C/C++交叉编译环境
查看>>
To ADO.NET Entity Framework
查看>>
运用Ntop监控网络流量(视频Demo)
查看>>
SCOM 2007 R2监控系统安装部署(四)使用SCOM 2007 R2监控AD域控制器
查看>>
linux下将数字补齐为固定宽度的方式
查看>>
探讨微软团队开发利器VSTS联合MS PROJECT协同开发
查看>>
安全运维之:网络实时流量监测工具iftop
查看>>
跟我学交换机配置(六)
查看>>
原创:检查点的三种加入方式
查看>>
图形界面备份Linux系统介绍
查看>>
SQLServer性能优化之查询提示
查看>>