GSON:java.lang.IollegalStateException:应为BEGIN_OBJECT,但却是STRI



我面临一个关于GSON json到Java的问题。我在这里查了很多帖子,但我找不到问题的答案。所以我在这里列出了我的问题。非常感谢!

这是我的Json数据

"{
    "data": {
        "marks": "",
        "spines": "",
        "dendrites": {
            "voxel": [
                [383,382,382,381],
                [49,50,51,52],
                [7,10,10,10],
                [0,0,0,0]
            ],
            "maxint": [32,42,28,28],
            "maxintcorrected": null,
            "maxintcube": null,
            "medianfiltered": [54.36979745,54.36979745,54.36979745,54.36979745],
            "meanbacksingle": null,
            "maxintsingle": null,
            "thres": null,
            "meanback": 42,
            "index": 1,
            "length": [0,0.3223757885,0.6336712814,0.9350672197,1.227262867],
            "XYlength": [0,0.2085982964,0.410997367,0.6084466603]
        }
    }
}
"

我的班级的定义遵循

public class Test {
    public data data;
    public class data {
        public Object marks;
        public String spines = "";
        public StandardSpinenalysisImage.data.dendrites[] dendrites;
        public class dendrites {
            public int voxel[][];
            public int maxint[];
            public String maxintcorrected = "";
            public String maxintcube = "";
            public int medianfiltered[];
            public String meanbacksingle = "";
            public String maxintsingle = "";
            public int thres = 0;
            public int meanback;
            public int index = 0;
            public int length[];
            public int XYlength[];
            public dendrites() {
                this.thres = 100;
            }
        }
    }
}

但是当我使用代码时Test t=g.fromJson(输入,Test.class);

我得到了错误的结果。

Exception in thread "AWT-EventQueue-0" com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was STRING at line 1 column 5

非常非常感谢!!

您的json看起来不错。只需尝试删除json
开头和结尾的"

您可以尝试使用此链接来验证您的json

今天面临同样的错误。在我的例子中,问题是JSON中的一个变量映射到String,但在类中,该变量位于class Type的对象上。这使得Gson认为JSON变量应该是Class类型,从而导致Expected BEGIN_OBJECT but was STRING 出现IllegalStateException

希望它能帮助到别人。

相关内容

最新更新