如何在windows store app中将图像添加到sqlite中?

时间:2013-08-05 10:23:00

标签: c# xaml windows-store-apps

我想在Windows应用商店中使用SQLite创建一个用于图像处理的应用。 我正在尝试将图像存储到SQLite中并从SQLite中检索图像。用于存储图像,我正在尝试将图像从xaml控制图像源转换为字节数组,但不能正常工作,

任何建议,图像到Windows存储应用程序中的字节数组转换?

1 个答案:

答案 0 :(得分:0)

此代码在JAVA中,但您可以转换为C#

使用BLOB列创建表:

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

使用HTTP下载图像并将其存储在表中:

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);  
 }
}

将BLOB加载到ImageView中:

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

编辑:1

有关c#的更多参考,请参阅以下链接

http://www.codeproject.com/Articles/196618/C-SQLite-Storing-Images