【发布时间】:2021-10-27 00:33:11
【问题描述】:
我正在尝试从应用程序中传递 JSON 文件以填充一些视图并在应用程序中执行一些功能,但我不断收到此错误。
com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_ARRAY but was STRING at line 1 column 1 path $
我已经阅读了以前关于类似主题的大部分答案,但没有一个解决方案适合我。
这是我传入我的 json 文件。
ArrayList<ControlProperty> controlProperty = new Gson().fromJson("json_file.json", new TypeToken<List<ControlProperty>>() {}.getType());
这是我的模型。
public class ControlProperty {
private String type;
private String label;
private String name;
private String subtype;
private String dependency;
private String description;
private String placeholder;
private String dependencyType;
private String selectDependencyOption;
private int minlength;
private int maxlength;
private long maxSize;
private String pageType;
private String expectedFormat;
private String maxDate;
private String minDate;
}
然后是json结构
[
{
"type": "Head",
"label": "All fields are necessary.",
"subtype": "h1",
"dependency": "",
"controlId": "frmb-1557846206638-fld-1",
"currentDate": false,
"pageType": "new-page",
"headerSize": "s",
"isFieldDependent": false
},
{
"required": true,
"name": "text-1550823191761",
"type": "text_input",
"label": "Surname",
"minlength": "1",
"maxlength": "50",
"subtype": "text_input",
"dependency": "",
"controlId": "frmb-1557846206638-fld-2",
"currentDate": false,
"pushFieldLink": "surname",
"isFieldDependent": false,
},
{
"name": "text-1550823211048",
"type": "text_input",
"label": "Middle Name",
"minlength": "1",
"maxlength": "50",
"subtype": "text",
"dependency": "",
"controlId": "frmb-1557846206638-fld-3",
"currentDate": false,
"pushFieldLink": "middle_name",
"isFieldDependent": false,
}
]
【问题讨论】:
标签: java android arrays json jsonexception