当前位置:  开发笔记 > 编程语言 > 正文

从eclipse中的文件中读取

如何解决《从eclipse中的文件中读取》经验,为你挑选了2个好方法。

我正在尝试从文本文件中读取数据到我的java程序.但是,无论我把文件放在哪里,eclipse都会连续给我一个Source not found错误.

我在项目目录中创建了一个额外的sources文件夹,有问题的文件在它和项目的bin文件中,它仍然无法找到它.

我甚至把它的副本放在我的桌面上,并在它要求我浏览源查找路径时尝试指向eclipse.

无论我做什么都找不到文件.

这是我的代码,如果它是相关的:

System.out.println(System.getProperty("user.dir"));
    File file = new File("file.txt");


    Scanner scanner = new Scanner(file);

另外,它说用户目录是项目目录,也有副本.

我不知道该怎么做.

谢谢,亚历克斯

在尝试下面的建议并再次刷新之后,我受到了许多错误的欢迎.

FileNotFoundException(Throwable).(String) line: 195   
FileNotFoundException(Exception).(String) line: not available 
FileNotFoundException(IOException).(String) line: not available   
FileNotFoundException.(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) line: not available [native method] 
URLClassPath$JarLoader.ensureOpen() line: not available 
URLClassPath$JarLoader.(URL, URLStreamHandler, HashMap) line: not available   
URLClassPath$3.run() line: not available    
AccessController.doPrivileged(PrivilegedExceptionAction) 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.next() line: not available   
CompoundEnumeration.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) line: not available [native method] 
LocaleServiceProviderPool.(Class) line: not available  
LocaleServiceProviderPool.getPool(Class) line: not available 
NumberFormat.getInstance(Locale, int) line: not available   
NumberFormat.getNumberInstance(Locale) line: not available  
Scanner.useLocale(Locale) line: not available   
Scanner.(Readable, Pattern) line: not available   
Scanner.(ReadableByteChannel) line: not available 
Scanner.(File) line: not available    

使用的代码:

System.out.println(System.getProperty("user.dir"));
    File file = new File(System.getProperty("user.dir") + "/file.txt");


    Scanner scanner = new Scanner(file);

Pablo Santa .. 19

您是否在复制文件后尝试刷新(右键单击 - >刷新)项目文件夹?这将使您的文件系统与Eclipse的内部文件系统SYNC.

运行Eclipse项目时,CWD(当前工作目录)是项目的根目录.不是bin的目录.不是src的目录,而是根目录.

此外,如果您使用的是Linux,请记住其文件系统通常区分大小写.



1> Pablo Santa ..:

您是否在复制文件后尝试刷新(右键单击 - >刷新)项目文件夹?这将使您的文件系统与Eclipse的内部文件系统SYNC.

运行Eclipse项目时,CWD(当前工作目录)是项目的根目录.不是bin的目录.不是src的目录,而是根目录.

此外,如果您使用的是Linux,请记住其文件系统通常区分大小写.



2> kgiannakakis..:

您是否尝试过使用绝对路径:

File file = new File(System.getProperty("user.dir") + "/file.txt");

推荐阅读
kikokikolove
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有