Чтение полей json в Unity
Нужна помощь в чтении json средствами JsonUtility .
{"frames": {
"aa1.png":
{
"frame": {"x":1,"y":1,"w":142,"h":142},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":142,"h":142},
"sourceSize": {"w":142,"h":142},
"pivot": {"x":0.5,"y":0.5}
},
"aa2.png":
{
"frame": {"x":145,"y":1,"w":142,"h":142},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":172,"h":172},
"sourceSize": {"w":142,"h":142},
"pivot": {"x":0.5,"y":0.5}
}}}
есть понимания в части получения значений полей
[System.Serializable]
public class V4
{
public int x;
public int y;
public int w;
public int h;
public V4() { }
}
[System.Serializable]
public class V2
{
public int w;
public int h;
public V2() { }
}
[System.Serializable]
public class F2
{
public int x;
public int y;
public F2() { }
}
[System.Serializable]
public class Frame
{
public V4 frame;
public bool rotated;
public bool trimmed;
public V4 spriteSourceSize;
public V2 sourceSize;
public F2 pivot;
public Frame() { }
}
Нужно получать имя каждого объекта (aa1.png, aa2.png... и т.д.) и поля каждого объекта.
Спасибо
Ответы (1 шт):
Автор решения: vmchar
→ Ссылка
Структура json, которую вы привели как пример - фактически Dictionary внутри Dictionary. Но, к сожалению, JsonUtility не поддерживает Dictionary. По этому, я бы рекомендовал вам использовать стороннее решение для ваших целей. К примеру, посмотрите в сторону Newtonsoft.json, который отлично зарекомендовал себя на огромном количестве проектов. У него гораздо больше возможностей, чем у Json Utility