开发者

Save an edited image to the SD card

I'm opening an image from the gallery, resizing it, and attempting to save the resized version to the apps data file so I can grab it in future. My problem is I keep getting a FileNotFoundException when I try to write it with an input stream.

This is the file it's trying to write too. "/mnt/sdcard/Android/data/foundcake.myslide/files/IMG_20100918_133128.png"

Am I missing any important steps here?

    File storagePath = new File(Environment.getExternalStorageDirectory() + "/Android/data/foundcake.myslide/files/");
    storageP开发者_如何学JAVAath.mkdirs();

    Debug.print("STORAGE PATH " + storagePath);

    Pattern pattern = Pattern.compile("/([^/]+)\\.[^/]+$");
    Matcher matcher = pattern.matcher(filePath);
    String fileName = "";
    while (matcher.find()) {
        fileName = matcher.group(1);
    }

    Debug.print("FILE NAME " + fileName);

    File cached = new File(storagePath, fileName + ".png");

    Debug.print("NEW FILE " + cached.toString());

    try {
        FileOutputStream out = new FileOutputStream(cached);
        bitmap.compress(Bitmap.CompressFormat.PNG, 100, out);
    } catch (Exception e) {
        e.printStackTrace();
    }


Needed

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

Whoops.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜