java.io.FileNotFoundException on an existing file
filenotfoundexception, java, java-io
Solution
You need to unescape the `%20` to spaces. e.g.:
fileLocation = new String(
Main.class.getProtectionDomain().getCodeSource().getLocation().getPath())
.replaceAll("%20", " ");
Problem
I am getting this error when I try to open a file: ``` java.io.FileNotFoundException: D:\Portable%20Programs\Android%20Development\workspace3\XXX-desktop\bin\World_X.fr (The system cannot find the path specified) at java.io.FileInputStream.open(Native Method) at java.io.FileInputStream.<init>(Unknown Source) at java.util.Scanner.<init>(Unknown Source) ``` The file is existing in the directory but I am still getting this error. However when I copy the same file in the Eclipse workspace Project src folder, no such Exception is returned (though this method also creates the World_X.fr file in the bin folder). What I am actually trying to do is get the absolute location of the .jar file through this: ``` fileLocation = new String(Main.class.getProtectionDomain().getCodeSource().getLocation().getPath()); ``` And then I am appending "World_X.fr" to the fileLocation string but this is not working. Please help me in this regard.