我有一个Base64字符串图像,存储在我的移动数据库中。我想将其转换为blob类型并将其保存在数据库中。
我有String base64Image="iVBORw0KGgoAAAANSUhEUgAAAGAAAACgCAYAAADzcGmMAAAACSV...";
这就是我的尝试。
byte[] byteImage=org.apache.commons.codec.binary.Base64.decodeBase64(befImage.getBytes());
json.put("during_unloading_photo", byteImage);
其中json是我的JSONObject,而during_unloading_photo是blob类型的列名。我无法在我的数据库中将字节数组,即byteImage存储为blob类型。
答案 0 :(得分:0)
所以你有一个由查询创建的表:
query = "CREATE TABLE IF NOT EXISTS " + ImageTableName + " ("
+ Id + " INTEGER PRIMARY KEY AUTOINCREMENT, "
+ ImageUrlName + " TEXT, "
+ ImageContentName + " BLOB );";
db.execSQL(query);
当你需要在db中更新图像时,你会这样做:
ContentValues values = new ContentValues();
values.put(DbUtil.ImageContentName, byteImage);
int rowCount = context.getContentResolver().update(DbUtil.ContentUriImage, values, ImageUrlName + "=?", whereArgs);
这很简单。