今天在网上看到一个simplejson,直接调用这两个API就可以了,简单易用

string jsonstr = SimpleJson.SimpleJson.SerializeObject(json);
Debug.LogError(jsonstr);
TestJson test = SimpleJson.SimpleJson.DeserializeObject<TestJson>(jsonstr);

做了测试和JsonUtility.ToJson(json);几乎是一样的,但是JsonUtility.ToJson(json); 需要在每个类上加上[System.Serializable] 特性标签 ,并且只能用字段,不能用属性 ,都可以满足我们日常需求

using System.Collections;
using System.Collections.Generic;
using UnityEngine; [System.Serializable]
public class TestJson
{
[SerializeField] //经测试,加不加都可以
public string Name;
[SerializeField]
public Student[] stud;
}
[System.Serializable]
public class Student
{
[SerializeField]
public string School;
[SerializeField]
public Gender gender;
} [System.Serializable]
public class Gender
{
[SerializeField]
public int age;
[SerializeField]
public List<int> list;
} public class TestSimpliJson : MonoBehaviour
{ // Use this for initialization
void Start()
{
Tess();
}
void Tess()
{
TestJson json = new TestJson();
json.Name = "飞天小猪";
json.stud = new Student[]; for (int i = ; i < json.stud.Length; i++)
{
json.stud[i] = new Student();
json.stud[i].School = "飞天小猪" + i;
json.stud[i].gender = new Gender();
json.stud[i].gender.age = i;
json.stud[i].gender.list = new List<int>();
for (int j = ; j < i * i; j++)
{
json.stud[i].gender.list.Add(j);
}
} string jsonstr = SimpleJson.SimpleJson.SerializeObject(json);
Debug.LogError(jsonstr);
TestJson test = SimpleJson.SimpleJson.DeserializeObject<TestJson>(jsonstr);
string strJson = JsonUtility.ToJson(json);
Debug.LogError(strJson);
}
}

两种方式,输出如下

{"Name":"飞天小猪","stud":[{"School":"飞天小猪0","gender":{"age":0,"list":[]}},{"School":"飞天小猪1","gender":{"age":1,"list":[0]}},{"School":"飞天小猪2","gender":{"age":2,"list":[0,1,2,3]}},{"School":"飞天小猪3","gender":{"age":3,"list":[0,1,2,3,4,5,6,7,8]}}]}

不过如果不给list赋值,稍微有点不一样的地方

{"Name":"飞天小猪","stud":[{"School":"飞天小猪0","gender":{"age":0,"list":null}},{"School":"飞天小猪1","gender":{"age":1,"list":null}},{"School":"飞天小猪2","gender":{"age":2,"list":null}},{"School":"飞天小猪3","gender":{"age":3,"list":null}}]}

{"Name":"飞天小猪","stud":[{"School":"飞天小猪0","gender":{"age":0,"list":[]}},{"School":"飞天小猪1","gender":{"age":1,"list":[]}},{"School":"飞天小猪2","gender":{"age":2,"list":[]}},{"School":"飞天小猪3","gender":{"age":3,"list":[]}}]}

最新文章

  1. Leetcode 3Sum Closest
  2. JS Note1
  3. Elasticsearch 教程--入门
  4. 抽象工厂模式(Abstract Factory)
  5. jsp中的&lt;jsp:setProperty&gt;中的param属性
  6. YTU 2987: 调整表中元素顺序(线性表)
  7. Angular学习(5)- 数组双向梆定+filter
  8. Tile-Based Deferred Rendering
  9. 卷积神经网络CNN介绍:结构框架,源码理解【转】
  10. My集合框架第二弹 二叉树的实现
  11. php namespace use 命名空间
  12. 25-语言入门-25-n-1位数
  13. ANDROID_MARS学习笔记_S01_010日期时间控件
  14. logstash 贪婪匹配
  15. 【Java】Web 服务编程技巧与窍门: 在 UDDI 注册中心为 Web 服务注册开发 UDDI Java 应用程序
  16. Linux误删C基本运行库libc.so.6急救方法
  17. 打开的IE网页不是最大化的解决方法
  18. 关于web前端代码艺术
  19. Zabbix 3.0 从入门到精通(zabbix使用详解)
  20. window下php5.5安装redis扩展

热门文章

  1. shell学习五十八天----/proc文件系统
  2. 注册通用验证用户filter
  3. 怎样在asp.net中用一般处理文件ashx实现下载功能
  4. hdu 4005(边双连通)
  5. VC++ 得到的函数地址与实际函数地址不一致的原因。
  6. 1254 Problem V
  7. ajax的适用场景
  8. 编译Hadoop1.1.2eclipse插件并测试
  9. mongo 过滤查询条件后分组、排序
  10. jmeter对响应结果做正则、json、xpath结果测试