改进com.google.gson.stream.MalformedJsonException错误(尾随逗号)

时间:2016-03-13 16:37:54

标签: java android json gson retrofit

我正在为REST客户端使用改装1.9 。对于Deserialization使用gson转换器。

  

问题是某些JSON 响应 无效。   例如:

{
    "foo": 4,
    "bar ": 5,
}

问题在于逗号。

所以我实现了自定义TypeAdapter,但我仍然得到相同的错误

retrofit.RetrofitError: com.google.gson.JsonSyntaxException: 
com.google.gson.stream.MalformedJsonException: Expected name at line 4 
column 2 path $.bar


public class LikeAdapter extends TypeAdapter<FooBar> {

    @Override
    public void write(JsonWriter out, FooBar value) throws IOException {
    }

    @Override
    public FooBar read(JsonReader in) throws IOException {

        if (in.peek() == JsonToken.NULL) {
            in.nextNull();
            return null;
        }

        FooBar fooBar = new FooBar();
        in.beginObject();

        while (in.hasNext()) {
            String name = in.nextName();
            if (name.equals("foo")) {
                int f = in.nextInt();
                fooBar.setFoo(f)
            } else if (name.equals("bar ")) {
                int b = in.nextInt();
                fooBar.setBar(b);
                break;
            }

        }
        return fooBar;
    }


}

知道如何解决这个问题?

由于

0 个答案:

没有答案