我正在尝试使用以下代码创建JsonElement:

String updateUrl = myurl + "/new_url";
JsonParser parser = new JsonParser();
JsonElement updateUrlJsonElement = parser.parse(updateUrl);


给我

com.google.gson.JsonSyntaxException: com.google.gson.stream.MalformedJsonException: Expected EOF at line 1 column 6
at com.google.gson.JsonParser.parse(JsonParser.java:65)
at com.google.gson.JsonParser.parse(JsonParser.java:45)


任何想法,我怎么能只用一个String值创建一个JSONElement。

最佳答案

根据the JSON format,JSON字符串用双引号引起来。您必须将String值用双引号引起来。

String updateUrl = "\"" + myurl + "/new_url" + "\"";


请注意,您也可以仅使用给定的JsonPrimitive创建JsonElementString的子类型)。

new JsonPrimitive(updateUrl); // without the quotes

10-08 08:48