unity解决一个咨询5千人没人回答和深思但是确实需要解决的问题json具体字段类型不确定的问题

首先 不确定如果是单独的节点,肯定是可以自己写代码判断解决的,
但是我是强迫症,我要解决自动化,解决子节点中的子节点中的子节点, 循环节点,

image.png

把这个这个不确定的字段变成字符串,或者 JObject或者JArray

假设
type=1则data是 数组

{
"type":1
"data":[]
}

假设 type=2
data是对象

{
"type":1
"data":{}
}

然后我把data定义了各种类型都失败了,定义为string也是我的一个退让。
JsonUtility.FromJson(obj.ToString());

1S0(AR8@T(5DZS805A7T6Z7.png

上面某个东西写错了,不过定义了jarray或者jobject 就会为null, 或者 dynamic或object 者string类
型但是真实的值并不是字符串也是为null,

这不应该呀,java都支持。

于是我我想到了牛顿JSON,以及微软自带的
MyNode myNode =JsonConvert.DeserializeObject(obj.ToString());

完美解决,支持JObject,JArray,object 或者dynamic貌似则直接识别为字符串,不过这都能解决需求了。

image.png

你可能感兴趣的:(unity解决一个咨询5千人没人回答和深思但是确实需要解决的问题json具体字段类型不确定的问题)