2012-08-12 39 views
-1

我就聯繫該做一個項目,我需要導入/存儲照片SQLite中DataBase.From我看過,我必須將圖片轉換成不同的格式(在這種假設可能是錯誤的),然後存儲它在數據庫中。你能告訴我我該怎麼做,或者我可以用不同的方法來做到這一點?兩者都會對我有所幫助,這樣我就可以學到更多。如何從SQLite數據庫導入圖片?

謝謝你,

+0

存儲圖片爲BLOB 。您可以存儲您希望的任何格式。 – 2012-08-12 01:40:59

+0

我很抱歉,對於android來說很新,我不知道blob是什麼? – 2012-08-12 02:57:17

+0

你並不需要了解Android的東西,但看了祝福[SQLite的文檔(http://www.sqlite.org/docs.html)你去詢問這類問題之前。 – 2012-08-12 21:05:05

回答

0

根據你想從畫面,無論是從網絡或從SD卡。不過,我假設你可以得到它並將其轉換爲位圖。在數據庫

Bitmap bm = (get it from anywhere); 
ByteArrayOutputStream blob = new ByteArrayOutputStream(); 
//the below line is used if you like to scale it down to store it into the database 
bm = Bitmap.createScaledBitmap(bm, width, height, false); 
//then put it into a byte array to store it in the database 
bm.compress(CompressFormat.JPEG, 100, blob); 
// method call to database 
dbClass.addPicture(blob.toByteArray()); 

表的定義:在數據庫類

SQLiteDatabase.execSQL("CREATE TABLE IF NOT EXISTS Pictures (id integer primary key autoincrement, pic blob not null "); 

AddPicture方法是以下

public void addPicture(byte[] picture){ 
     db = this.getWritableDatabase(); 
    ContentValues cv = new ContentValues(); 
    cv.put("pic", picture); 
    db.insert("Pictures ", null, cv); 
} 

我希望幫助

相關問題