Unity基础_如何持久化存储数据_Json_LitJson
JSON的基本数据类型:
数值:十进制数,不能有前导0,可以为负数,可以有小数部分。还可以用e或者E表示指数部分。不能包含非数,如NaN。不区分整数与浮点数。JavaScript用双精度浮点数表示所有数值。
字符串:以双引号""括起来的零个或多个Unicode码位。支持反斜杠开始的转义字符序列。
布尔值:表示为true或者false。
数组:有序的零个或者多个值。每个值可以为任意类型。序列表使用方括号[,]括起来。元素之间用逗号,分割。形如:[value, value]
对象:若干无序的“键-值对”(key-value pairs),其中键只能是字符串[1]。建议但不强制要求对象中的键是独一无二的。对象以花括号{开始,并以}结束。键-值对之间使用逗号分隔。键与值之间用冒号:分割。
空值:值写为null
token(6种标点符号、字符串、数值、3种字面量)之间可以存在有限的空白符并被忽略。四个特定字符被认为是空白符:空格符、水平制表符、回车符、换行符。空白符不能出现在token内部(但空格符可以出现在字符串内部)。JSON标准不允许有字节序掩码,不提供注释的句法。 一个有效的JSON文档的根节点必须是一个对象或一个数组。
JSON交换时必须编码为UTF-8。[2]转义序列可以为:“\\”、“\"”、“\/”、“\b”、“\f”、“\n”、“\r”、“\t”,或Unicode16进制转义字符序列(\u后面跟随4位16进制数字)。对于不在基本多文种平面上的码位,必须用UTF-16代理对(surrogate pair)表示,例如对于Emoji字符——喜极而泣的表情(U+1F602 😂 face with tears of joy)在JSON中应表示为:
在GitHub 中搜索Litjson 找到https://github.com/LitJSON/litjson
下载该库,找到litjson-0.18.0\litjson-0.18.0\src路径下的LitJson文件夹到Unity中的Plugins文件夹中
引用命名空间:using LitJson;
LitJson比UnityJson好的地方在于,处理的数据内容不需要序列化
JsonMapper.ToJson("要转化的数据")
转化完成后存储文件为
writer.WriteObjectStart(); 结构开头
writer.WritePropertyName("action");结构Key
writer.WriteObjectEnd();结构结尾
writer.WriteArrayStart();数组开头
writer.WriteArrayEnd();数组结尾
示例代码: