日期:2014-05-16  浏览次数:20350 次

将图片放入sqlite database 并在取出

CREATE TABLE storedImages (_id INTEGER PRIMARY KEY, myImage BLOB)

?


DefaultHttpClient mHttpClient = new DefaultHttpClient();
HttpGet mHttpGet = new HttpGet("your image url");
HttpResponse mHttpResponse = mHttpClient.execute(mHttpGet);
if (mHttpResponse.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {
?HttpEntity entity = mHttpResponse.getEntity();
?if ( entity != null) {
??// insert to database
??ContentValues values = new ContentValues();
??values.put(MyBaseColumn.MyTable.ImageField, EntityUtils.toByteArray(entity));
??getContentResolver().insert(MyBaseColumn.MyTable.CONTENT_URI, values);
?}
}

取出

?ImageView myImage = (ImageView) findViewById(R.id.myImage);
byte[] bb = cursor.getBlob(cursor.getColumnIndex(MyBaseColumn.MyTable.ImageField));
myImage.setImageBitmap(BitmapFactory.decodeByteArray(bb, 0, bb.length));