getting file not found exception
-
27-10-2019 - |
Question
I have my android activity :
try {
File root=Environment.getExternalStorageDirectory();
Log.i("root",root.toString());
File dir=new File(root.getAbsolutePath() + "/downloads");
dir.mkdirs();
file=new File(dir,"mytext.txt");
FileOutputStream out=new FileOutputStream(file,true);
PrintWriter pw=new PrintWriter(out);
pw.println("Hello! Welcome");
pw.println("You are Here...!!!");
pw.flush();
pw.close();
try {
out.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
also added :
<uses-permission android:name="androd.permission.WRITE_EXTERNAL_STORAGE"/>
but it throws me FileNotfound exception : 01-13 09:06:44.442: WARN/System.err(419): java.io.FileNotFoundException: /mnt/sdcard/downloads/mytext.txt (No such file or directory)
and if i add
if(file.exists()){
System.out.println("file exists");
}
else{
System.out.println("No such Fileeeeeeeeee");
}
it moves into "else" part.
Thanks
Sneha
Solution
Try this,,it works for me
// create a File object for the parent directory
File wallpaperDirectory = new File("/sdcard/Wallpaper/");
// have the object build the directory structure, if needed.
wallpaperDirectory.mkdirs();
// create a File object for the output file
File outputFile = new File(wallpaperDirectory, filename);
//now attach OutputStream to the file object, instead of a String representation
FileOutputStream fos = new FileOutputStream(outputFile);
OTHER TIPS
In Android 6 (Marshmallow) I had to explicitely check whether my app has permission "WRITE_EXTERNAL_STORAGE"
Not sure but please verify that there exists External Storage in your emulator or phone otherwise it will through exception.
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow