相关疑难解决方法(0)

Gson,JSON和LinkedTreeMap的微妙之处

我最近开始玩JSON字符串,并被告知谷歌自己的库Gson,是处理这些的新的和时髦的方式.

我理解它的方式是JSON字符串本质上是一个地图.每个变量指向字符串中的值.

例如:

String jsonInput2 = "{\"created_at\":\"Sat Feb 08 15:37:37 +0000 2014\",\"id\":432176397474623489\"}
Run Code Online (Sandbox Code Playgroud)

到目前为止,一切都很好.JSON创建此字符串时的信息可以使用以下代码分配给变量:

Gson gson = new Gson();

Map<String, String> map = new HashMap<String, String>();

map = (Map<String, String>) gson.fromJson(jsonInput, map.getClass());

String createdAt = map.get("created_at");
Run Code Online (Sandbox Code Playgroud)

它在简约之美中几乎是艺术性的.但这就是美丽结束的地方,我的困惑开始了.

以下是上述JSON字符串的扩展名;

String jsonInput2 = "{\"created_at\":\"Sat Feb 08 15:37:37 +0000 2014\",\"id\":432176397474623489\",\"user\":{\"id_str\":\"366301747\",\"name\":\"somethingClever\",\"screen_name\":\"somethingCoolAndClever\"}}";
Run Code Online (Sandbox Code Playgroud)

我的问题是这些"括号内的括号"如何适用于该user部分JSON

如何将这些内括号中指定的值分配给变量?

任何人都可以向我解释,或者在代码中向我展示如何Gson处理这样的东西,以及我如何使用它?

简而言之,为什么......

String jsonInput = "{\"created_at\":\"Sat Feb 08 15:37:37 +0000 2014\",\"id\":432176397474623489\",\"user\":{\"id_str\":\"366301747\",\"name\":\"somethingClever\",\"screen_name\":\"somethingCoolAndClever\"}}";

Gson gson = new Gson(); …
Run Code Online (Sandbox Code Playgroud)

java json gson

12
推荐指数
3
解决办法
3万
查看次数

标签 统计

gson ×1

java ×1

json ×1