我想用java中的GSon解析Json中的数据我有这个json
{
"time": 3.251,
"about_us": {
"dc:identifier": "some string",
"dc:title": "some string",
"dc:contributor": [
"1",
"2"
],
"dc:hasversion": "some string"
},
"results": {
"ocw": [
{
"title": "some string",
"url": "some string",
"language": "some string",
"university_name": "some string",
"university_url": "some string",
"description": "",
"uri": "some string5",
"similar": "some string",
"resourceType": "OCW",
"relatedoers": [
]
}
],
"otheroer": [
]
}
}
我只需要获取“ocw”
字段,我很困惑如何做到这一点。
我为 json 对象创建了相应的 java 类,并使用 @SerializedName 注释来指定要为每个数据成员获取的字段名称。
类(class)如下。
结果
OCW
最佳答案
如果您将此 json 存储在某个 jsonString
中:
JsonObject jsonObject = (JsonObject) new JsonParser().parse(jsonString);
JsonElement jsonElement = jsonObject.getAsJsonObject("results").getAsJsonArray("ocw").get(0);
MyObject object = new GsonBuilder().create().fromJson(jsonElement, MyObject.class);
MyObject 应该反射(reflect)这部分:
"title": "some string",
"url": "some string",
"language": "some string",
"university_name": "some string",
"university_url": "some string",
"description": "",
"uri": "some string5",
"similar": "some string",
"resourceType": "OCW",
"relatedoers": [
]
关于java - java中使用Gson反序列化Json,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27082464/