新手问题 Sqlite中查询出来的
cursor.getBlob不是布尔类型的
我该如何转换成布尔类型进行使用
如下代码会报错
record.setDisplay(cursor.getBlob(cursor.getColumnIndexOrThrow(RecordsConstrct.RecordEntry.COLUMN_NAME_DISPLAY)));
cursor.getBlob得到的是byte类型的我如果转换成String类型再使用会报错
能帮忙看下我下面的代码应该如何修改?
谢谢大神了。
String display=new String(cursor.getBlob(cursor.getColumnIndexOrThrow(RecordsConstrct.RecordEntry.COLUMN_NAME_DISPLAY)));
record.setDisplay(Boolean.parseBoolean(display));
如果用getString 可以得到 但是值跟我保存的不相符
record.setDisplay(Boolean.parseBoolean(cursor.getString(cursor.getColumnIndexOrThrow(RecordsConstrct.RecordEntry.COLUMN_NAME_DISPLAY))));
Sqlite的数据类型不支持布尔型,sqlite的数据类型有5种,
NULL 空值
INTEGER 整数
REAL 浮点数
TEXT 字符串
BLOB 大数据
getBlob并不是取布尔值数据,而是对应的取大数据类型值数据,对应的类型是BLOB。布尔型数据可以用0,1值来存储。