android - 在 android 中保存和检索图像的问题?

标签 android image canvas save

我有一个使用 Canvas 功能的应用程序,我想保存和检索所有图像(无论我保存了什么)。?

问题

我只能保存和检索单张图片

动态保存图片,(image001,image002......)

更新

   try {
                toDisk.compress(Bitmap.CompressFormat.JPEG, 100, new FileOutputStream(new File("/mnt/sdcard/image00"+saveimageid+".jpg")));
                saveimageid++;
            } catch (FileNotFoundException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }

我从 image001 检索图像。

File imgFile = new  File("/mnt/sdcard/image001.jpg");
if(imgFile.exists()){

    Bitmap myBitmap = BitmapFactory.decodeFile(imgFile.getAbsolutePath());

    ImageView myImage = (ImageView) findViewById(R.id.ImageView01);
    myImage.setImageBitmap(myBitmap);

最佳答案

我猜你想加载所有匹配 imageXYZ.jpg 的文件。

我不知道你为什么要保存像“00”+saveimageid+.jpg这样的文件。 如果您想确保文件名的长度相同(或至少三个位置),请执行以下操作

new File(String.format("/mnt/sdcard/image%03d.jpg", saveimageId))

检索您可能需要的文件

File dir = new File("/mnt/sdcard/");
File[] images = dir.listFiles(new FilenameFilter() {
     @Override
     public boolean accept(final File dir, final String filename) {
         return filename.matches("image[0-9]+\\.jpg");
     }
});

然后您可以随意使用 images 数组。

作为旁注:如果这是 Android,您不应该假设外部存储位于/mnt/sdcard 中。使用 Environment.getExternalStorageDirectory()

关于android - 在 android 中保存和检索图像的问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9429703/

相关文章:

android - adb pull -> 未找到设备

javascript - Canvas - 创建部分实线和部分虚线

javascript - 将二维像素数组复制到 Javascript Canvas

java - 如何让 Android 应用程序在 API 级别 7 和 8 上运行?

android - 如何确保我的应用仅在屏幕尺寸为 7'' + 的设备上运行?

java - Flutter:无法解析配置 ':path_provider:classpath' 的所有 Artifact

php - 使用 php 显示 Mysql 表中的图表

ios - 如何为图像和消息创建条件?

image - 低分辨率图像的特征检测器和描述符

javascript - 将字符串转换为 javascript 代码