gpt4 book ai didi

java - 使用 java (google-gson) 解析 JSON 数据

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:24:11 24 4
gpt4 key购买 nike

尝试学习如何使用 JSON 和解析 json 数据。我正在使用 google-gson API 来解析我的 json 数据。

我正在获取以下格式的 JSON 数据

{"guid":{"uri":"http://social.yahooapis.com/v1/me/guid","value":"123456789"}}

这是我使用 google-gson 的解析代码

Gson gson=new Gson();
MyGuid myGuid=new MyGuid();
myGuid=gson.fromJson(response.getBody(), MyGuid.class);

public class MyGuid {

public MyGuid() {

}

private String value;

public String getValue() {
return value;
}

public void setValue(String value) {
this.value = value;
}

但我得到的 guid 值为空。我知道我做错了,但不熟悉 JSON 格式让我更加困惑。

这方面的任何帮助都会有所帮助。

最佳答案

您的数据结构应该反射(reflect)您要反序列化的数据。

例如,您可以使用以下形式:

public class Data {
private Map<String, String> guid;

public Map<String, String> getGuid() {
return guid;
}

public void setGuid(Map<String, String> guid) {
this.guid = guid;
}

public static void main(String[] args) {
String json =
"{\"guid\":{" + "\"uri\":\"http://social.yahooapis.com/v1/me/guid\","
+ "\"value\":\"123456789\"}}";
Data data = new Gson().fromJson(json, Data.class);
System.out.println(data.getGuid()
.get("uri"));
}
}

JSON 的guid 属性映射到Data 类型的guid 属性。该对象的属性作为字符串放置在 Map 中。

关于java - 使用 java (google-gson) 解析 JSON 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8286621/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com