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;
-------
}
任何帮助将不胜感激!
答案 0 :(得分:2)
你的json以
开头{“results”:[....所以它本质上是一个具有键“结果”的数组字段的对象
尝试创建一个类似于:
的包装类class MyWrapper {
List<Form> results;
}
这应该让你去。
编辑1(用户添加了结果解析):尝试用List替换该字段并创建一个简单的FormField类,只有一个字段(标题为ex)用于测试目的并查看它是如何进行的。 (顺便说一下,粘贴所有相关的代码部分和整个模型,我们更容易发现错误)