0
我試圖從圖片庫,然後上傳它的文件。Android - 當runnig bitmap.compress,它總是進入FileNotFoundException
但是在上傳過程之前,我想壓縮圖像文件。
所以這是當圖像被選擇,我將文件保存路徑在一個全局變量(字符串selectedPath1)的代碼 -
if (resultCode == RESULT_OK) {
Uri selectedImageUri = data.getData();
if (requestCode == SELECT_FILE1)
{
selectedPath1 = getPath(selectedImageUri);
}
}
然後我用下面的代碼來壓縮圖像 -
try {
Log.d("MAIN", "1");
compressedPictureFile = new File(selectedPath1);
Log.d("MAIN", "2");
Bitmap bitmap = BitmapFactory.decodeFile(selectedPath1);
Log.d("MAIN", "3");
FileOutputStream fOut = new FileOutputStream(compressedPictureFile);
Log.d("MAIN", "4");
boolean compressed = bitmap.compress(Bitmap.CompressFormat.JPEG, 90, fOut);
Log.d("MAIN", "E5");
if (compressed){
Log.d("MAIN", "E6");
}else{
Log.d("MAIN", "E7");
}
Log.d("MAIN", "E8");
fOut.flush();
fOut.close();
} catch (FileNotFoundException e1) {
Log.d("MAIN", "E1");
e1.printStackTrace();
} catch (IOException e1) {
Log.d("MAIN", "E2");
e1.printStackTrace();
}
當我乳寧的代碼,我的,因爲它使所述的logcat見[Log.d(「MAIN」,「3」);]線,然後將其表示 - [日誌.d(「MAIN」,「E1」);]。
也就意味着問題是下一行 -
FileOutputStream fOut = new FileOutputStream(compressedPictureFile);
那我做錯了什麼?我如何解決它?
感謝