如何以编程方式将示例图像从drawable文件夹复制到sdcard文件夹?

时间:2012-09-20 02:20:54

标签: android drawable sd-card

我的drawable文件夹中有图片/图片,我想在我的sdcard文件夹中复制所有相同的质量和细节吗?如果我有这样的话。

Integer[] mThumbIds = {
        R.drawable.pic_1, R.drawable.pic_2,
        R.drawable.pic_3, R.drawable.pic_4,
        R.drawable.pic_5, R.drawable.pic_6,
        R.drawable.pic_7
};

然后我的应用程序在sdcard中创建了一个自己的目录,如下所示:

String newFolder = "/myFolder2";
String extStorageDirectory = Environment.getExternalStorageDirectory().toString();
File myNewFolder = new File(extStorageDirectory + newFolder);
myNewFolder.mkdir();

如何将所有可绘制的图片传输到sdcard中创建的文件夹,并且质量和细节相同?

1 个答案:

答案 0 :(得分:4)

可绘制文件夹中的这些图像可以通过BitmapFactory访问,您可以将位图保存为PNG或JPG。

Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher);
    File sd = Environment.getExternalStorageDirectory();
    String fileName = "test.png";
    File dest = new File(sd, fileName);
    try {
        FileOutputStream out;
        out = new FileOutputStream(dest);
        bitmap.compress(Bitmap.CompressFormat.PNG, 100, out);
        out.flush();
        out.close();
    } catch (FileNotFoundException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

对于其他类型的图像,我认为将它们放入资源文件夹是一种更好的方法。

最诚挚的问候, 王正红