如何使用人员数据从android中的库中插入SQLite数据库中的图像

时间:2015-01-16 03:45:41

标签: android sqlite

我想创建一个表单,用户可以使用上传图片选项保存他的数据。并保存SQLiteDatabase中的所有数据。

先谢谢

2 个答案:

答案 0 :(得分:0)

检查此答案storing image into SQLite in android 但实际上在数据库中存储图像并不是一个好习惯。 最好将图像保存在SD卡上并插入到此图像的仅DB路径中。

官方教程如何在SQLite http://developer.android.com/training/basics/data-storage/databases.html

中保存数据

答案 1 :(得分:0)

您可以在sqlite中以字节数组格式插入图像。 要存储字节数组,您需要定义具有blob类型格式的列。

然后你可以这样做: -

public void storeImage(Bitmap img){
    byte[] data = getBitmapAsByteArray(img);     

     SQLiteDatabase db=database.getWritableDatabase();
     db.execSQL("INSERT INTO IMAGETABLE VALUES(data);");
}

public static byte[] getBitmapAsByteArray(Bitmap bitmap) {
    ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
    bitmap.compress(CompressFormat.PNG, 0, outputStream);       
    return outputStream.toByteArray();
}