ToB企服应用市场:ToB评测及商务社交产业平台

标题: Unity 数据读取|(四)Json文件解析(Newtonsoft.Json ,Litjson,JsonUtil [打印本页]

作者: 道家人    时间: 2024-6-12 12:29
标题: Unity 数据读取|(四)Json文件解析(Newtonsoft.Json ,Litjson,JsonUtil
1. 前言


2. 优缺点


3. 解析


  1. {  
  2.   "name": "John",  
  3.   "age": 30,  
  4.   "married": true,  
  5.   "address": {  
  6.     "street": "123 Main St",  
  7.     "city": "New York",  
  8.     "state": "NY",  
  9.     "postal_code": "10001"  
  10.   },  
  11.   "phone_numbers": [  
  12.     "555-1234",  
  13.     "555-5678"  
  14.   ],  
  15.   "career": null,  
  16.   "hobbies": ["reading", "traveling"]  
  17. }
复制代码
3.1 Newtonsoft.Json

3.1.1 下载地址


3.1.2 优缺点


3.1.3 解析


  1. Person person = JsonConvert.DeserializeObject<Person>(json);
复制代码

  1. string jsonStr = JsonConvert.SerializeObject(person);
复制代码
3.2 listjson

3.2.1 下载地址


3.2.2 优缺点


3.2.3 解析


  1. Person person = JsonMapper.ToObject<Person>(str);
复制代码
  1.    // 解析json字符串
  2.   JsonData jsonData = JsonMapper.ToObject(jsonStr);  
  3.    // 根据json的对象名来获取数据
  4.    Debug.Log("name = " + (string)jsonData["name"]);  
复制代码

  1. string jsonStr = JsonMapper.ToJson(persion);
复制代码
3.3 JsonUtility

3.3.1 优缺点


3.3.2 解析


  1. Person person= JsonUtility.FromJson<Person>(json);
复制代码

  1. string jsonStr= JsonUtility.ToJson(person);
复制代码
3.4 SimpleJSON

3.4.1 下载地址


3.4.2 优缺点


3.4.3 解析


  1. JSONNode node = JSON.Parse(str);
  2. var Nmae = node["Nmae"].Value;      
  3. var age = node["age"].AsFloat;  
复制代码

  1.         JSONNode nodeRoot = new JSONObject();
  2.         JSONNode node1 = new JSONArray();
  3.         for (int i = 0; i < books.Count; i++)
  4.         {
  5.             JSONNode node0 = new JSONObject();
  6.             node0.Add("Name", books[i].name);
  7.             node1.Add(node0);
  8.         }
  9.         nodeRoot.Add("Preson", node1);
复制代码
4. 总结



免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4