discuz!cms
LitJson插件介绍-LitJson插件介绍下载-免费下载3D模型库-汇宝盆
汇宝盆 > 免费分享区 > CG教程 > Unity > LitJson插件介绍
LitJson插件介绍

资源买买提

资源数:99个

目录CONTENTS

一、LitJson插件介绍

在线预览PREVIEW

LitJson插件介绍

LitJson插件介绍

LitJson是一个开源项目,比较小巧轻便,安装也很简单,在Unity里只需要把LitJson.dll放到Plugins文件夹下,并在代码的最开头添加 “Using LitJson”就可以了。简单来说,LitJson的用途是实现Json和代码数据之间的转换,一般用于从服务器请求数据,得到返回的Json后进行转换从而在代码里可以访问。


关于和服务器数据之间的转换在此就不再赘述,官网以及一些博客里已有涉及,而且也比较详细了。

这里,主要谈一下LitJson的其他用途。

想象一个场景,你需要显示一个家庭信息的表格,这个表格的每一行代表了你的一个家人的名字、年龄、手机号码和住址等信息。因为这个信息不大,用数据库实在是大材小用,而且也很麻烦。

我们可以用一个数据结构来在代码里表示每个家人的信息:


1. public class FamilyInfo {  

2.     public string name;  

3.     public int age;  

4.     public string tellphone;  

5.     public string address;  

6. }  

然后用一个List来表示家庭信息表:

1. public class FamilyList {  

2.     public List<FamilyInfo> family_list;  

3. }  

最后,打印信息:

1. private void DisplayFamilyList(FamilyList familyList) {  

2.     if (familyList == nullreturn;  

3.           

4.     foreach (FamilyInfo info in familyList.family_list) {  

5.         Debug.Log("Name:" + info.name + " Age:" + info.age + " Tel:" + info.tellphone + " Addr:" + info.address);  

6.     }  

7. }  

准备工作都已经做好,那么数据到底在什么时候初始化呢?

正如前面所说,我们把信息存成一个表格,并保存为txt格式。注意,为了能使用LitJson解析,txt中必须使用Json格式。

family.txt如下:

1. {  

2.     "family_list": [  

3.         {  

4.             "name" : "candycat",  

5.             "age" : 21,  

6.             "tellphone" : "xxx",  

7.             "address" : "xxx"  

8.         },  

9.         {  

10.             "name" : "candycat#",  

11.             "age" : 22,  

12.             "tellphone" : "xxx",  

13.             "address" : "xxx"  

14.         },  

15.         {  

16.             "name" : "candycat##",  

17.             "age" : 23,  

18.             "tellphone" : "xxx",  

19.             "address" : "xxx"  

20.         }  

21.     ]  

22. }  

代码如下:

1. using UnityEngine;  

2. using UnityEditor;  

3. using System.Collections;  

4. using System.Collections.Generic;  

5. using LitJson;  

6.   

7. public class FamilyInfo {  

8.     public string name;  

9.     public int age;  

10.     public string tellphone;  

11.     public string address;  

12. }  

13. public class FamilyList {  

14.     public List<FamilyInfo> family_list;  

15. }  

16. public class LitJsonSample : MonoBehaviour {        

17.     public FamilyList m_FamilyList = null;      

18.     // Use this for initialization  

19.     void Start () {  

20.         ReloadFamilyData();            

21.         DisplayFamilyList(m_FamilyList);  

22.     }  

23.       

24.     private void ReloadFamilyData()  

25.     {             

26.         UnityEngine.TextAsset s = Resources.Load("Localize/family"as TextAsset;   

27.         string tmp = s.text;  

28.         m_FamilyList = JsonMapper.ToObject<FamilyList>( tmp );  

29.         if ( JsonMapper.HasInterpretError() )  

30.         {  

31.             Debug.LogWarning( JsonMapper.GetInterpretError() );  

32.         }  

33.     }     

34.     private void DisplayFamilyList(FamilyList familyList) {  

35.         if (familyList == nullreturn;            

36.         foreach (FamilyInfo info in familyList.family_list) {  

37.             Debug.Log("Name:" + info.name + "       Age:" + info.age + "        Tel:" + info.tellphone + "      Addr:" + info.address);  

38.         }  

39.     }  

40. }  

有几点注意的地方:

· Resources.Load("Localize/family")表示加载family文件,但一定要注意要把family.txt文件放在Resources文件夹下,只有这样Resources.Load才能够访问到,在这个例子里family的绝对路径为“Resources/Localize/family”。这是因为Resources文件夹是Unity默认的资源文件夹,有着特殊的用途,这里我还不是很了解,以后要深入学习一下;

预览结束,完整教程请 购买下载
资源参数
    教程名称:LitJson插件介绍 语       言:中文 页数/时长: 4页
    软件版本: unity 上传时间:2017/03/10 价格:¥0
    文件格式: .docx 文件大小:20.3kb
下载

使用说明:

1. 本站所有资源(包括3D模型、CG教程、插件软件、材质贴图、工程文件等)由设计师上传,仅供学习、参考,请勿用于非法用途。

2. 本站付费类资源第一次需有偿下载,重复下载不再收费。

3. 若出现3d模型类资源打不开,请确认您的软件版本是否过低。

4. 本站欢迎设计师注册开店,上传作品进行交流、交易。

5. 如在使用过程中,遇到任何问题,请下拉页面至评论区留言,或咨询QQ:2353487910。

关键词:

您还未登录

全部评论: 0