如何获取.java文件所在的目录?我不想使用System.getProperty("user.dir")
,因为它给了我可执行文件的目录,而不是包含这行代码的.java文件的目录。
我需要这个,因为我正在开发一个JSP web-app,Java代码在服务器端创建一个.csv文件,我想让它在客户端可用,但我需要放置csv文件,其中.html文件的位置是可以下载的。
我当前的文件夹结构如下:
Java资源
- > SRC
- > .java文件
的WebContent
- > .html文件
答案 0 :(得分:5)
源文件可能也不存在。 Java是一种编译语言,它运行编译文件,.java文件不是必需的,因此可能在运行时不存在。
但是,您可以像以前建议的那样获取.class文件的位置。
答案 1 :(得分:4)
试试这个问题
String s = getClass().getName();
int i = s.lastIndexOf(".");
if(i > -1) s = s.substring(i + 1);
s = s + ".class";
System.out.println("name " +s);
Object testPath = this.getClass().getResource(s);
System.out.println(testPath);
此代码段来自this.getClass().getResource("").getPath() returns an incorrect path