将位图保存到SD卡上时出现FileNotFoundException

时间:2018-07-10 21:02:44

标签: java android fileoutputstream

我试图将“ viewBitmap”保存到SD卡中。

这是我的代码:

try{
String mPath = Environment.getExternalStorageDirectory().toString();
imageFile = new File(mPath, "/snapshot.png");
FileOutputStream outputStream = new FileOutputStream(imageFile);
viewBitmap.compress(Bitmap.CompressFormat.JPEG,100,outputStream);
outputStream.flush();
outputStream.close();
Toast.makeText(Share.this, "Collage was saved.",Toast.LENGTH_SHORT).show();
}catch(Throwable e) {
 e.printStackTrace();
}

在“ FileOutputStream outputStream = new FileOutputStream(imageFile);”行,引发了异常:

enter image description here

1 个答案:

答案 0 :(得分:0)

您在AndroidManifest.XML文件中添加了权限

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

如果设备运行的是Android 6.0(API级别23)或更高版本,并且应用程序的targetSdkVersion为23或更高版本,请参考documentation以在运行时请求权限。