Gson “fromJson”
Gson “fromJson”
Gson.fromJson(“some/url/path”, String.class) 抛出 MalformedJsonException: Use JsonReader.setLenient(true) to accept malformed JSON
。为什么 gson 将 url 字符串视为 Json 而 Gson.fromJson(“simpleString”, String.class) 工作正常。它不应该将 url 也视为字符串吗?
这两个例子都是错误的,但是Gson做了一些简单的猜测。
如果您的 JSON 对象是一个字符串,它应该被引用。
System.out.println(gson.fromJson("\"http://some/string\"", String.class));
工作正常。
如果 JSON 字符串未被引用,它将仅适用于单个字母数字序列,即使是斜线也会破坏 Gson 对类型的猜测。
Gson.fromJson(“some/url/path”, String.class) 抛出 MalformedJsonException: Use JsonReader.setLenient(true) to accept malformed JSON
。为什么 gson 将 url 字符串视为 Json 而 Gson.fromJson(“simpleString”, String.class) 工作正常。它不应该将 url 也视为字符串吗?
这两个例子都是错误的,但是Gson做了一些简单的猜测。
如果您的 JSON 对象是一个字符串,它应该被引用。
System.out.println(gson.fromJson("\"http://some/string\"", String.class));
工作正常。
如果 JSON 字符串未被引用,它将仅适用于单个字母数字序列,即使是斜线也会破坏 Gson 对类型的猜测。