SQLiteDatabase DB = this.getReadableDatabase();ImageModel ImageModel = new ImageModel();
这是我的摘录
Cursor Cursor = DB.rawQuery("SELECT ImageFile FROM Image WHERE ID = '1'", null);
if(Cursor.getCount() < 1) {
System.out.println("NO DATA");
}else {
System.out.println("HAVE DATA");
byte[] byteArray = Cursor.getBlob(1);
ImageModel.setImage(BitmapFactory.decodeByteArray(byteArray, 0, byteArray.length));
}
我从此代码
byte[] byteArray = Cursor.getBlob(1);
中收到错误
Caused by: android.database.CursorIndexOutOfBoundsException: Index -1 requested, with a size of 1
您必须使用moveToFirst()
,因此Cursor
的索引位于第一行(如果存在),而不是1
,请使用0
作为getBlob()
中的索引,因为列索引是[基于C0]:
0