com.google.gson.JsonSyntaxException:java.lang.IllegalStateException:预期BEGIN_ARRAY但在第1行第2列是BEGIN_ARRAY

时间:2015-11-26 09:36:50

标签: json

Java类:

  "env": {
    "PORT": 80, // change to anything?
  

错误:com.google.gson.JsonSyntaxException:java.lang.IllegalStateException:预期为BEGIN_ARRAY但在第1行第2列为BEGIN_ARRAY

1 个答案:

答案 0 :(得分:0)

我认为问题出在那条线上:

Json json = gs.fromJson(st, Json.class);

Json类不是集合,这就是Gson无法反序列化的原因。虽然错误信息的确远非明确。

我建议您尝试以下方法:

或者

Object[] objects = gs.fromJson(st, Object[].class);

Type collectionType = new TypeToken<Collection<Object>>(){}.getType();
Collection<Object> objects = gs.fromJson(st, collectionType);

(改编自Gson用户指南:https://sites.google.com/site/gson/gson-user-guide#TOC-Collections-Examples