如何使用 gson 库将字符串转换为 JsonObject

2022-08-31 10:02:56

请建议如何将 a 转换为使用库。StringJsonObjectgson

我不成功地做了:

String string = "abcde";
Gson gson = new Gson();
JsonObject json = new JsonObject();
json = gson.toJson(string); // Can't convert String to JsonObject

答案 1

如果需要使用以下命令,可以将其转换为 JavaBean:

 Gson gson = new GsonBuilder().setPrettyPrinting().create();
 gson.fromJson(jsonString, JavaBean.class)

要使用更灵活的 JsonObject,请使用以下命令:

String json = "{\"Success\":true,\"Message\":\"Invalid access token.\"}";
JsonParser jsonParser = new JsonParser();
JsonObject jo = (JsonObject)jsonParser.parse(json);
Assert.assertNotNull(jo);
Assert.assertTrue(jo.get("Success").getAsString());

这相当于以下内容:

JsonElement jelem = gson.fromJson(json, JsonElement.class);
JsonObject jobj = jelem.getAsJsonObject();

答案 2

要以更简单的方式执行此操作,请考虑以下事项:

JsonObject jsonObject = (new JsonParser()).parse(json).getAsJsonObject();