【发布时间】:2017-08-10 19:44:24
【问题描述】:
Json 是有效的,但在通过解析时。 Gson,它给出了错误:
com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: 应为 BEGIN_OBJECT,但在第 1 行第 439 列是 BEGIN_ARRAY
我已经粘贴了整个 Json here。
第 439 列指的是 "formFields":[{"(粘贴箱中的第 5 行)中的最后一个字符(引号)。
要解析的代码:
JSONArray results = jsonObject.getJSONArray("results");
String s = results.toString();
Type token = new TypeToken<List<Form>>(){}.getType();
List<Form> formArrayList1 = new Gson().fromJson(s, token);
表单模型具有根json数组中每个json对象中的所有元素。
public class Form{
-------
-------
JSONArray formFields;
-------
}
任何帮助将不胜感激!
【问题讨论】:
-
我昨天也问过类似的问题,希望对你有帮助:) Check this
-
请分享,模态类,json很好,你使用的“formFields”对象不是数组,来自服务器的响应是数组类型
-
formFields应声明为List<SomeClass> formFields;。 -
您可以使用:jsonschema2pojo.org 创建模型类。它会做两件事。 1)验证json是否有效。 2) 创建有效的 Java POJO
-
@PramodYadav 从我在 JSON 中看到的
formFields是JSONArray和模型Form与formFields具有相同的签名。如果我错了,请纠正我。
标签: android json gson android-json