我嘗試保存位圖,但行outStream = new FileOutputStream(file);
總是拋出錯誤java.io.FileNotFoundException: /storage/emulated/0/inpaint/card.png: open failed: ENOENT (No such file or directory)
。無法保存位圖:ENOENT(沒有這樣的文件或目錄)
//Save bitmap
InputStream inputStream = null;
try {
inputStream = getContentResolver().openInputStream(uri);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
Bitmap bmp = BitmapFactory.decodeStream(inputStream);
File f3=new File(Environment.getExternalStorageDirectory()+"/inpaint/");
if(!f3.exists())
f3.mkdirs();
OutputStream outStream = null;
File file = new File(Environment.getExternalStorageDirectory() + "/inpaint/"+"card"+".png");
try {
outStream = new FileOutputStream(file);
bmp.compress(Bitmap.CompressFormat.PNG, 90, outStream);
outStream.close();
Toast.makeText(getApplicationContext(), "Saved", Toast.LENGTH_LONG).show();
} catch (Exception e) {
e.printStackTrace();
}
我還添加了
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
到清單。
您的設備是否在Android MM或更高版本上運行? – tahsinRupam
我的目標是API 15及更高版本。 – Jonas
好的,但你的應用程序運行的設備的Android操作系統版本是什麼?如果它是> =棉花糖,那麼你必須在運行時詢問權限。 – tahsinRupam