解析字符串时的 Gson 库包含特殊字符 \u

Gson library when parse string contain special char \u

我有这样一个简单的代码:

 JsonParser parser = new JsonParser();
 JsonElement element = parser.parse("{\"description\":\"c:\userDescription.txt\"}");
 JsonObject attributes = element.getAsJsonObject();
 System.out.println(attributes);

我预计输出是:

{"description":"c:\userDescription.txt"}

但实际上我有例外:

Exception in thread "main" com.google.gson.JsonSyntaxException: java.lang.NumberFormatException: For input string: "serD"

你能帮我吗,输入什么才能得到期望的输出:

 {"description":"c:\userDescription.txt"}

下面的Java字符串是一个字符长,\字符:

String s = "\";

与 Java 一样,JSON 使用 \ 作为其转义字符。所以你需要转义JavaJSON。试试这个:

JsonElement element = parser.parse("{\"description\":\"c:\\userDescription.txt\"}");