我有这个方法:
public static Object parseStringToObject(String json) {
String Object = json;
Gson gson = new Gson();
Object objects = gson.fromJson(object, Object.class);
parseConfigFromObjectToString(object);
return objects;
}
我想解析一个 JSON:
public static void addObject(String IP, Object addObject) {
try {
String json = sendPostRequest("http://" + IP + ":3000/config/add_Object", ConfigJSONParser.parseConfigFromObjectToString(addObject));
addObject = ConfigJSONParser.parseStringToObject(json);
} catch (Exception ex) {
ex.printStackTrace();
}
}
但我收到一条错误消息:
com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: 应为 BEGIN_OBJECT 但在第 1 行第 1 列为 STRING
原文由 Crapo Wolf 发布,翻译遵循 CC BY-SA 4.0 许可协议
即使没有看到您的 JSON 字符串,您也可以从错误消息中得知它不是解析为您的类实例的正确结构。
Gson 期望您的 JSON 字符串以对象左括号开头。例如
但是你传递给它的字符串以一个开引号开头