我在java web应用程序中使用了以下c'tor
public File(String pathname)
例如:
File = new File(“1.txt”);
然后我在路径中获得以下文件:
C:\Program Files\Apache Software Foundation\Apache Tomcat 7.0.22\bin\1.txt
我的问题:为什么这是使用上面的c'tor时的默认文件夹,如果有任何选项可以默认更改项目文件夹,例如。
由于
答案 0 :(得分:1)
由于在创建文件时没有给出路径,因此默认情况下它会创建.Java文件所在的文件。为防止这种情况,您可以使用
File file = new File ( "C:\\1.txt" );
现在它将在C:drive中创建1.txt。
您可以查看File Documentation。没有办法设置默认路径,而是在File()
构造函数中指定它自己。
答案 1 :(得分:1)
相对路径的文件使用System.getProperty("user.dir")
,即应用程序启动目录(这几乎总是一个坏主意)。在Web应用程序中,您希望使用与Web应用程序目录相关的Servlet getRealPath("/1.txt")
。请注意,\\
不是/
。
答案 2 :(得分:1)
并且如果有任何选项可以默认为项目文件夹更改它,例如。
在servlet中,您可以使用
File f = new File(getServletContext().getRealPath("/1.txt"));