
文章目录
- 🟥 要生成的 Json
- 🟧 创建 Json 方法
- 🟨 解析 Json 方法
在我们项目中,可能经常用到解析 Json,
但有时也需要存档的工作。那该怎样生成Json呢?

下面我们就以上节 Json 例子为例,来讲解如何代码生成 Json
🟥 要生成的 Json
本节,我们会来生成这样一个Json字符串:
[{“name”:“小明”,“Age”:12,“班级”:“一班”},{“name”:“小红”,“Age”:13,“Kungfu”:“三班”}]
它跟下面的Json是一样的,只是格式不同。
[{"name":"小明","age":12,"grade":"一班"},{"name":"小红","age":13,"grade":"三班"}
]
🟧 创建 Json 方法
按照如下方式,我们便可以生成上面的 Json
using System;
using UnityEngine;[Serializable]
public class Person
{public string name;public string age;public string grade;
}[Serializable]
public class Persons
{public Person[] person;
}public class NewBehaviourScript : MonoBehaviour
{private void Start(){Person person0=new Person();person0.name = "小明";person0.age = "12";person0.grade = "一班";Person person1=new Person();person1.name = "小红";person1.age = "13";person1.grade = "三班";Persons persons=new Persons();persons.person = new[] {person0, person1};string jsonValue = JsonUtility.ToJson(persons);Debug.Log(jsonValue);}
}

🟨 解析 Json 方法
解析的类跟Json是有对应关系的。若大家忘了解析的类是怎样写出来的,
参阅博客:传送门
using System;
using UnityEngine;[Serializable]
public class Person
{public string name;public string age;public string grade;
}[Serializable]
public class Persons
{public Person[] person;
}public class NewBehaviourScript : MonoBehaviour
{private void Start(){//这是我们的Json,可以用上方类进行解析。//[{"name":"小明","Age":12,"班级":"一班"},{"name":"小红","Age":13,"Kungfu":"三班"}]// 因为是在C#代码中,“要替换成’string jsonValue="[{‘name‘:‘小明‘,‘Age‘:12,‘班级‘:‘一班‘},{‘name‘:‘小红‘,‘Age‘:13,‘Kungfu‘:‘三班‘}]";Persons persons = JsonUtility.FromJson<Persons>(jsonValue);Debug.Log(persons.person[1].name);}
}
大家还有什么问题,欢迎在下方留言!

如果你有 技术的问题 或 项目开发
都可以加下方联系方式
和我聊一聊你的故事🧡










![[ARM+Linux] 基于wiringPi库的串口通信](https://img-blog.csdnimg.cn/9ee83239c1034c5f90b6f223c348f377.png)





