温馨提示×

unity怎么解析json数组

小亿
226
2023-10-28 01:25:25
栏目: 编程语言

在Unity中解析JSON数组可以使用JsonUtility或Json.Net两种方式。

  1. 使用JsonUtility解析JSON数组: 首先,定义一个与JSON数组对应的类。假设有如下JSON数组:
{
    "data": [
        { "name": "John", "age": 25 },
        { "name": "Mary", "age": 30 },
        { "name": "Tom", "age": 35 }
    ]
}

可以定义以下类来表示JSON数组的结构:

[System.Serializable]
public class Person
{
    public string name;
    public int age;
}

[System.Serializable]
public class Data
{
    public Person[] data;
}

然后,可以使用JsonUtility来解析JSON数组:

string json = "{\"data\":[{\"name\":\"John\",\"age\":25},{\"name\":\"Mary\",\"age\":30},{\"name\":\"Tom\",\"age\":35}]}";
Data jsonData = JsonUtility.FromJson<Data>(json);

最后,可以通过jsonData来获取解析后的数据。

  1. 使用Json.Net解析JSON数组: 首先,需要在Unity中引入Json.Net库(可以从NuGet或Unity Asset Store中获取)。 然后,可以使用以下代码来解析JSON数组:
using Newtonsoft.Json;
using System.Collections.Generic;

string json = "{\"data\":[{\"name\":\"John\",\"age\":25},{\"name\":\"Mary\",\"age\":30},{\"name\":\"Tom\",\"age\":35}]}";
Dictionary<string, List<Person>> jsonData = JsonConvert.DeserializeObject<Dictionary<string, List<Person>>>(json);

最后,可以通过jsonData来获取解析后的数据。

无论使用JsonUtility还是Json.Net,都需要定义一个与JSON数组对应的类,并将JSON字符串转换为该类的实例来实现解析。

0