中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Android 數據庫中怎么存取圖片

發布時間:2021-08-03 17:01:16 來源:億速云 閱讀:130 作者:Leah 欄目:數據庫

Android 數據庫中怎么存取圖片,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。


一、數據庫創建和存取方法:

在數據庫創建時,圖片字段的數據類型存儲為 BLOB數據庫插入操作

public void onCreate(SQLiteDatabase db)
{

    String sql = "create table " + TB_NAME + " ( " + ID + " integer primary key , " + IMAGE + " BLOB ) ";
    db.execSQL(sql);

}


將圖片一字節形式存儲數據庫讀取操作

public long insert(byte[] img) 
{

    SQLiteDatabase db = getWritableDatabase();
    ContentValues cv = new ContentValues();
    cv.put(IMAGE, img);
    long result = db.insert(TB_NAME, null, cv);
    return result;

}



得到的圖片是Bitmap類型,參數position 點擊圖片在ListView、GridView等內的位置 ,可根據需要編寫代碼二

public Bitmap getBmp(int position) 
{

    SQLiteDatabase db = getReadableDatabase();
    Cursor cursor = select(TB_NAME);
    cursor.moveToPosition(position);
    byte[] in = cursor.getBlob(cursor.getColumnIndex(IMAGE));
    Bitmap bmpout = BitmapFactory.decodeByteArray(in, 0, in.length);
    return bmpout;

}


二、將圖片轉化為 byte[]//參數id為圖片資源 (R.drawable.img)

public byte[] img(int id)
{

    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    Bitmap bitmap = ((BitmapDrawable) getResources().getDrawable(id)).getBitmap();
    bitmap.compress(Bitmap.CompressFormat.PNG, 100, baos);
    return baos.toByteArray();

}

關于Android 數據庫中怎么存取圖片問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

柳江县| 华坪县| 佛山市| 汝阳县| 沙湾县| 铜山县| 琼结县| 丹棱县| 舒城县| 葵青区| 兰考县| 万山特区| 高尔夫| 荔波县| 婺源县| 闻喜县| 株洲县| 搜索| 正镶白旗| 金寨县| 钟山县| 淮安市| 定兴县| 通辽市| 信阳市| 瓦房店市| 昌宁县| 扎鲁特旗| 济源市| 托克托县| 眉山市| 垣曲县| 汝城县| 藁城市| 百色市| 盘锦市| 拉孜县| 洮南市| 栖霞市| 屯留县| 浏阳市|