将String值解析为JsonElement会产生MalformedJsonException

时间:2014-11-07 01:21:43

标签: java json gson

我正在尝试使用以下代码创建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。

1 个答案:

答案 0 :(得分:1)

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

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

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

new JsonPrimitive(updateUrl); // without the quotes