1

当我从 SQLite 检索 blob 值时,它会给出不同的值,因为它存储在数据库中。我不知道为什么会这样。当我使用cursor.getString()时,它给出了相同的值。但是当我使用时curser.getBlob(),它给出了不同的价值。此外,当我将cursor.getString()值转换为再次bytes[]使用getBytes()时,它会转换为存储在数据库中的不同值。

请告诉我解决方案,因为我无法找到发生这种情况的原因。

4

1 回答 1

2

我认为您已经使用插入查询将数据插入到 sqlite 数据库中。在我看来,您应该使用以下方法插入数据以及图像。

CREATE TABLE IF NOT EXISTS " + DB_TABLE + "("+ 
               KEY_NAME + " TEXT," + 
               KEY_IMAGE + " BLOB);";

ContentValues cv = new  ContentValues();
cv.put(KEY_NAME,    name);
cv.put(KEY_IMAGE,   image);
database.insert( DB_TABLE, null, cv );

使用这个方法应该可以。如果没有,请让我知道。祝你好运。

于 2012-08-09T21:35:40.167 回答