ORMLite在数据库中存储PNG文件

时间:2012-11-13 14:03:36

标签: android database image ormlite

我正在使用ORMLite创建一个应用程序来将数据存储到Android设备中。

所以基本上,我创建了一个带有一些属性的类问题,每个问题都有一个与之相关的特定图像。

我正考虑在资产文件夹中存储我的图像,然后执行类似这样的操作

@DatabaseField
private String pathToTheImage;

然后循环每个问题:

ImageView iv = (ImageView)view.findViewById(R.id.image);
iv.setImageDrawable(new BitmapDrawable(view.getContext().getAssets().open(myQuestion.getpathToTheImage())));

所以我的问题是,有更好的想法在Android DB中存储png文件吗?我找不到一个很好的教程。

谢谢,

1 个答案:

答案 0 :(得分:2)

assets文件夹仅包含您添加到应用程序的文件。你不能写入这个文件夹。

如果您只存储来自assets文件夹的图片,那么您的方法是正确的。否则,您应该使用context.openFileOutput()在应用程序的私人目录中创建文件,您仍然可以使用您的方法...保留文件的路径。

另一种方法是使用Databaseblob ORMLite DataType.BYTE_ARRAY类型的{{1}}类型中对您的图片进行报道。您可以查看此post以获取有关此操作的更多详细信息。