[英]How to decode a base64 string image into byte array and store it as blob type in database?
我有一個Base64字符串圖像,存儲在我的移動數據庫中。 我想將其轉換為Blob類型並將其保存在數據庫中。
我有String base64Image="iVBORw0KGgoAAAANSUhEUgAAAGAAAACgCAYAAADzcGmMAAAACSV...";
這就是我嘗試過的。
byte[] byteImage=org.apache.commons.codec.binary.Base64.decodeBase64(befImage.getBytes());
json.put("during_unloading_photo", byteImage);
其中json是我的JSONObject,而after_unloading_photo是列名稱,它是Blob類型。我無法在我的數據庫中存儲字節數組,即byteImage作為Blob類型。
因此您有一個通過查詢創建的表,如下所示:
query = "CREATE TABLE IF NOT EXISTS " + ImageTableName + " ("
+ Id + " INTEGER PRIMARY KEY AUTOINCREMENT, "
+ ImageUrlName + " TEXT, "
+ ImageContentName + " BLOB );";
db.execSQL(query);
並且當您需要更新數據庫中的圖像時,您可以這樣做:
ContentValues values = new ContentValues();
values.put(DbUtil.ImageContentName, byteImage);
int rowCount = context.getContentResolver().update(DbUtil.ContentUriImage, values, ImageUrlName + "=?", whereArgs);
這很簡單。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.