Unity-背包系统-使用Json解析数据

在Unity中使用Json进行解析小型数据
Unity-背包系统-使用Json解析数据_第1张图片
(1)这就是一个简单的Json 配置文档,这个Json 里面的属性是根据 UI 背包系统里面的属性进行创建出来。后期的 Json 学习文档会出一个专题进行详细的学习。使用中括号进行编辑,将物品保存成数组,每一个物品都是一个对象,
(2)解析Json
方法一:JsonObject在InventoryManager中创建一个解析物品的方法 这里把它叫成 PathItemJson(), 这个方法中 使用一个集合进行存储 物品类,解析Json文件首先要取到内容,而取到里面的内容可以使用 Resources 中的 load<>()加载进行取得,文本类型在 Unity中有一个专门的类型,叫做 TextAsset 类型,写入 <>中间,然后 将路径写入 ()中间,这里是使用 Items,这里不使用 Items.json,是因为它本身就是json文件,改了半天,一直空指针。返回一个 TextAsset 类型,再接下来使用一个 string类型的变量进行接收,也就是获取 JSON中的内容,存储得到的字符串。需要注意的是 InventoryManager 这个脚本中需要引入 using UnityLitJson 命名空间。接下来的一个问题是来自,JsonObject 这个类名无法点出来,后来才发现这个是个 插件。。。。。既然到了这里 的话就,接下来就是在 PathItemJson()方法中创建出JsonObject对象,然后将接收到的 Json 物品信息j进行传入,然后就是使用 foreach()进行遍历 J.list,得到的是 Json [] {} 所有的集合,temp代表的是一个Item对象,获取到了之后就是将temp类型转换成为一个枚举类型,重点就是根据类型进行实例化不同对象,这个插件是真的麻烦。
方法二:So Unity内置 的 JsonUtility,
方法三:Unity中 LitJson,这里重点学习一下。打开 Json 官网,下载dll文件。认准 LitJson。然后滑倒最下面会有一个这样的界面。然后点击 LitJson文件,下载出来。我这边的电脑上面没有找到 LitJson文件,所以就在百度上面随便下载 了一个。类似于这样的。JsonMapper.ToObject():把json字符串转成对象.
JsonMapper.ToJson():把对象转成json字符串
然后将 JSONOBject文件放到 Unity 的 Plugins文件夹中,习惯上是将 插件都放在这里面。
这里我没有在官网找到这个 ,所以在西西软件园下载了一个。

Unity-背包系统-使用Json解析数据_第2张图片
接下来就是解析LitJson的方法,以下是 LitJson进行解析的,但是有点问题。
在这里插入图片描述
Unity-背包系统-使用Json解析数据_第3张图片
Unity-背包系统-使用Json解析数据_第4张图片
仅供参考。

你可能感兴趣的:(Unity,3D)