Android 从存储中读取文件时出错

Android error reading file from storage

我正在尝试将文件读入位图中,但出现此异常。我已经检查了位置并且文件在那里。我能够将文件写入该位置,只是无法读回。

E/BitmapFactory(23020): Unable to decode stream: java.io.FileNotFoundException:
file:/storage/emulated/0/Pictures/JPG_20150322_150618_-1377838390.jpg: 
open failed: ENOENT (No such file or directory)

我的清单中有正确的权限

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

这是创建文件路径的代码

File storageDir = Environment.getExternalStoragePublicDirectory(
    Environment.DIRECTORY_PICTURES);
File image = File.createTempFile(timestamp, ".jpg", storageDir);

mCurrentPhotoPath = "file:" + image.getAbsolutePath();

读取文件的代码如下:

BitmapFactory.decodeFile(mCurrentPhotoPath, bmOptions);

你的路径错误

使用 file:// 而不是 file: 或者不需要添加 append this

file:

根本不需要。正确的路径是:

/storage/emulated/0/Pictures/JPG_20150322_150618_-1377838390.jpg

现在一切正常