I’m trying to read from a text file to input data to my java program. However, eclipse continuosly gives me a Source not found error no matter where I put the file.
I’ve made an additional sources folder in the project directory, the file in question is in both it and the bin file for the project and it still can’t find it.
I even put a copy of it on my desktop and tried pointing eclipse there when it asked me to browse for the source lookup path.
No matter what I do it can’t find the file.
here’s my code in case it’s pertinent:
System.out.println(System.getProperty('user.dir')); File file = new File('file.txt'); Scanner scanner = new Scanner(file);
in addition, it says the user directory is the project directory and there is a copy there too.
I have no clue what to do.
Thanks, Alex
after attempting the suggestion below and refreshing again, I was greeted by a host of errors.
FileNotFoundException(Throwable).<init>(String) line: 195 FileNotFoundException(Exception).<init>(String) line: not available FileNotFoundException(IOException).<init>(String) line: not available FileNotFoundException.<init>(String) line: not available URLClassPath$JarLoader.getJarFile(URL) line: not available URLClassPath$JarLoader.access$600(URLClassPath$JarLoader, URL) line: not available URLClassPath$JarLoader$1.run() line: not available AccessController.doPrivileged(PrivilegedExceptionAction<T>) line: not available [native method] URLClassPath$JarLoader.ensureOpen() line: not available URLClassPath$JarLoader.<init>(URL, URLStreamHandler, HashMap) line: not available URLClassPath$3.run() line: not available AccessController.doPrivileged(PrivilegedExceptionAction<T>) line: not available [native method] URLClassPath.getLoader(URL) line: not available URLClassPath.getLoader(int) line: not available URLClassPath.access$000(URLClassPath, int) line: not available URLClassPath$2.next() line: not available URLClassPath$2.hasMoreElements() line: not available ClassLoader$2.hasMoreElements() line: not available CompoundEnumeration<E>.next() line: not available CompoundEnumeration<E>.hasMoreElements() line: not available ServiceLoader$LazyIterator.hasNext() line: not available ServiceLoader$1.hasNext() line: not available LocaleServiceProviderPool$1.run() line: not available AccessController.doPrivileged(PrivilegedExceptionAction<T>) line: not available [native method] LocaleServiceProviderPool.<init>(Class<LocaleServiceProvider>) line: not available LocaleServiceProviderPool.getPool(Class<LocaleServiceProvider>) line: not available NumberFormat.getInstance(Locale, int) line: not available NumberFormat.getNumberInstance(Locale) line: not available Scanner.useLocale(Locale) line: not available Scanner.<init>(Readable, Pattern) line: not available Scanner.<init>(ReadableByteChannel) line: not available Scanner.<init>(File) line: not available
code used:
System.out.println(System.getProperty('user.dir')); File file = new File(System.getProperty('user.dir') + '/file.txt'); Scanner scanner = new Scanner(file);
Did you try refreshing (right click -> refresh) the project folder after copying the file in there? That will SYNC your file system with Eclipse’s internal file system.
When you run Eclipse projects, the CWD (current working directory) is project’s root directory. Not bin’s directory. Not src’s directory, but the root dir.
Also, if you’re in Linux, remember that its file systems are usually case sensitive.