0

是否可以使用 GSON 解析字符串并将 '1'、'on'、'yes' 等值转换为布尔值 true?

所以,我有课:

public class OItem {
    public int id;
    public String name;
    public Boolean is_online;
 }

然后我需要使用 GSON 将其转换为 OItem 对象

String string_json = "{id:200, name: Ivan Ivan, is_online : yes}";
Gson gson = new Gson();
OInfo = gson.fromJson(string_json, OInfo.class);

如何使某些值被视为真,而其他值被视为假?

谢谢你。

4

1 回答 1

1

那不是有效的 JSON。{id:200, name: "Ivan Ivan", is_online : "yes"}是有效的,但nameis_online值是字符串。

JSON 是类型化的 - 所有值都是字符串、数字、布尔值、对象或列表,因此这是任何(反)序列化程序所期望的。其他任何东西都不是 JSON,因此您将无法使用 JSON 解析器来解析它。

您想要做的是让 getterOItem对照“真”值列表检查字符串值,然后返回一个普通的布尔值。

于 2013-04-09T21:03:26.280 回答