uniyt 解析Json 数组
时间: 2024-05-11 14:19:07 浏览: 8
Unity中解析JSON数组可以使用JsonUtility类和JsonHelper类。以下是使用JsonUtility类解析JSON数组的示例:
假设我们有以下JSON数组:
```
{
"players": [
{
"name": "Alice",
"score": 10
},
{
"name": "Bob",
"score": 20
},
{
"name": "Charlie",
"score": 30
}
]
}
```
我们可以定义一个类来表示该数组:
```
[System.Serializable]
public class PlayerData
{
public string name;
public int score;
}
[System.Serializable]
public class PlayersData
{
public PlayerData[] players;
}
```
然后,我们可以使用JsonUtility类将JSON数据解析到该类中:
```
string json = "{'players':[{'name':'Alice','score':10},{'name':'Bob','score':20},{'name':'Charlie','score':30}]}";
PlayersData playersData = JsonUtility.FromJson<PlayersData>(json);
```
现在,我们可以使用解析后的数据:
```
foreach (PlayerData player in playersData.players)
{
Debug.Log(player.name + " has a score of " + player.score);
}
```
输出:
```
Alice has a score of 10
Bob has a score of 20
Charlie has a score of 30
```
使用JsonHelper类解析JSON数组的示例:
JsonHelper类提供了一些静态方法来解析JSON数组。我们可以使用以下方法解析JSON数组:
```
string json = "{'players':[{'name':'Alice','score':10},{'name':'Bob','score':20},{'name':'Charlie','score':30}]}";
PlayerData[] playersData = JsonHelper.FromJson<PlayerData>(json);
```
现在,我们可以使用解析后的数据:
```
foreach (PlayerData player in playersData)
{
Debug.Log(player.name + " has a score of " + player.score);
}
```
输出:
```
Alice has a score of 10
Bob has a score of 20
Charlie has a score of 30
```