我特林從我的DCIM文件夾加載.png文件,但它拋出ExecptionAndroid的位圖FileNotFoundException異常ENOENT而如果文件存在
06-25 14:03:09.350: E/BitmapFactory(12552): Unable to decode stream: java.io.FileNotFoundException: /[email protected]: open failed: ENOENT (No such file or directory)
我擁有這些權限在我的清單中添加方法只叫:
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
,我調用這個方法來加載文件:
public static Bitmap getPreview(File parentDir){
Bitmap toReturn=null;
File file = new File(parentDir,"preview.png");
if (file.exists()) {
file.getParentFile().mkdirs();
toReturn=BitmapFactory.decodeFile(file.getAbsolutePath());
}
return toReturn;
}
文件不EXIS噸,當我顯示的完整路徑是
06-25 14:03:09.100: I/(12552): /storage/emulated/0/DCIM/TextureVisualiser/SetA/preview.png
我知道我可以從這個路徑加載TEXTFILES:
06-25 14:03:09.110: I/(12552): /storage/emulated/0/DCIM/TextureVisualiser/SetA/info.txt
爲txt文件,我得到的方法:
public static String[] readTitleAndSubtitle(File parentDir){
String[] toReturn = new String[2];
File file = new File(parentDir,"info.txt");
Log.i("",""+file);
try {
BufferedReader br = new BufferedReader(new FileReader(file));
toReturn[0]=br.readLine();
toReturn[1]=br.readLine();
br.close();
} catch (Exception e) {
// TODO: handle exception
}
return toReturn;
}
所以基本上我在文件夾中有一個.txt文件和一個.png文件,只有txt文件可以加載。 png文件引發異常。
編輯: 我試圖將其移動到其他lokation,但仍然無法讀取.png文件,但我可以讀取.txt文件。
Thx提前,
Lightbringa
爲什麼要創建一個使用IF(file.exists新目錄() ){file.getParentFile()。mkdirs(); ? – Opiatefuchs
沒有android.permission.READ_INTERNAL_STORAGE這樣的android權限,或者android.permission.WRITE_INTERNAL_STORAGE – Sipka
我在沒有mkdirs()的情況下嘗試了它,但它沒有改變任何東西。早些時候,我看到一個建議,告訴我應該嘗試一下。 – user3730107