2011-11-30 51 views
0

我正试图从Netbeans中的文本文件中读取数据。在我的项目目录的顶层,我有foo.txt。然后在我的代码有:Netbeans从哪里读取文件?

File file = new File("foo.txt"); 

它抛出一个FileNotFoundException,但是。这是一个使用Spring和Tomcat的Java Web应用程序,但是我不确定这些细节是否重要,因为我正在Netbeans内部运行整个事情。基本上,我只想知道我需要放置文件的位置,以便Netbeans能够读取它。

更新 - 好的电话家伙,它正在寻找Tomcat的bin目录。现在,这可能是一个愚蠢的问题,但是,我该如何才能让它看起来在我的顶级项目目录中?我觉得把文本文件放入tomcat的bin文件是不合适的。

+2

你贴只能抛出'NullPointerException'的代码。这是抛出'FileNotFoundException'的其他东西。 –

+1

确实,这是我之后使用该文件创建的扫描仪对象,它引发了我相信的FileNotFound。 – Steve

回答

3

直接回答你的问题,如果你正在运行Tomcat上的应用程序,文件将从当前工作目录打开。这可能是tomcat目录中的bin/文件夹。

通过检查file.getAbsolutePath()的结果,您可以确定您的程序正在查找的位置。

但是,对于Web应用程序,我建议将需要读取的文件放入类路径中,以便在部署Web应用程序时不必依赖某个文件结构。

5

您可以尝试打印File对象的绝对路径,以查看它在文件系统上的位置。

System.out.println(file.getAbsolutePath()); 
4

我会用下面找出哪里放文件:

System.out.println(System.getProperty("user.dir")); 
0

尝试System.getProperty("user.dir")获得当前工作目录

相关问题