Android 保存圖片到SQLite

1、bitmap保存到SQLite 中 數據格式:

     db.execSQL("Create table " + TABLE_NAME + "( _id INTEGER PRIMARY KEY AUTOINCREMENT,USER_AGE  INTEGER,USER_NAME TEXT,BITMAP_VALUES BLOB );");

2、bitmap 變爲 Blob

    ContentValues values = new ContentValues();

    final ByteArrayOutputStream os = new ByteArrayOutputStream(); 

    bmp.compress(Bitmap.CompressFormat.PNG, 100, os);  

    values.put(MyUser.User.BITMAP_VALUES, os.toByteArray());

    values.put(MyUser.User.USER_NAME,"icon");

    values.put(MyUser.User.USER_AGE,50);

    getContentResolver().insert(MyUser.User.CONTENT_URI, values);

3、從SQLite中讀取Bitmap

     byte[] in=cur.getBlob(cur.getColumnIndex(MyUser.User.BITMAP_VALUES));

     bmpout=BitmapFactory.decodeByteArray(in,0,in.length);

總結:

inputStream:  作爲數據緩存,數據寫如何供別的對象讀取,其方法爲read();

outputStream:作爲數據緩存,將來向別的對象寫內容!其方法write();

byte[] in=cur.getBlob(cur.getColumnIndex(MyUser.User.BITMAP_VALUES));//這樣也可以對數據進行初始化,byte是基本類型,不需要之前進行長度定義。

 

 

轉載至:http://www.cnblogs.com/hedalixin/archive/2011/01/21/1941390.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章