android - 使用 Gson 将字符串解析为对象。 bool 值始终为假

标签 android gson

我从我的服务器中获取了一个 Json-String:

{"erfolgreich":"true","id":"14"}

当我打电话

//result is the string above
msgServer = gson.fromJson(result, MsgSpielerErstellenSA.class);

bool 值始终为假...

我做错了什么?

这是我的 MsgSpielerErstellenSA

public class MsgSpielerErstellenSA {

    private long id;
    private boolean isErfolgreich;

    public MsgSpielerErstellenSA(long id, boolean isErfolgreich) {
        super();
        this.id = id;
        this.isErfolgreich = isErfolgreich;
    }


    public boolean isErfolgreich() {
        return isErfolgreich;
    }

    public void setErfolgreich(boolean isErfolgreich) {
        this.isErfolgreich = isErfolgreich;
    }

    public long getId() {
        return id;
    }

    public void setId(long id) {
        this.id = id;
    }


}

最佳答案

因为 bool 字段的正确名称是 erfolgreich,而不是 isErfolgreich。请使用以下类:

public class MsgSpielerErstellenSA {

    private long id;
    private boolean erfolgreich;

    public MsgSpielerErstellenSA(long id, boolean isErfolgreich) {
        this.id = id;
        this.erfolgreich = isErfolgreich;
    }


    public boolean isErfolgreich() {
        return erfolgreich;
    }

    public void setErfolgreich(boolean isErfolgreich) {
        this.erfolgreich = isErfolgreich;
    }

    public long getId() {
        return id;
    }

    public void setId(long id) {
        this.id = id;
    }
}

但是如果你不想重命名这个字段,你可以在上面使用@SerializedName("erfolgreich")注解

关于android - 使用 Gson 将字符串解析为对象。 bool 值始终为假,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22865227/

相关文章:

Android GridView 最后一列被删减

android - 使用 Qt for Android 在 Android 中显示网页

java - 在 Screen libgdx 中添加分数

java - 如何在 Android 中解析 JSON 数组(不是 Json 对象)

java - 有没有办法使用 TypeAdapter 来序列化父类和子类实例

android - 任何参数都不能使用 Gson 提供的参数来调用

java - 使用 gson 反序列化 JSON 对象数组时遇到问题

java - 到底什么时候请求运行时许可?

android - ContactsContract.Contacts 默认是空的吗?

java - 动态表示法序列化名称