获取当前文件的路径
问题描述:
如何获取.java文件所在的目录?我不想使用System.getProperty("user.dir")
,因为这给了我可执行文件的目录,而不是包含这行代码的.java文件的目录。获取当前文件的路径
我需要这个,因为我正在开发一个JSP Web应用程序,并且Java代码在服务器端创建一个.csv文件,并且我希望在客户端使它可用,但是我需要将csv文件,其中.html文件的位置是可以下载的。
我现在的文件夹结构是这样的:
的Java资源 - > SRC
- > Java文件
的WebContent
- > HTML文件
答
尝试此询问你。类
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);
此代码段我s from this.getClass().getResource("").getPath() returns an incorrect path
答
源文件可能不存在。 Java是一种编译语言,它运行编译文件,.java文件不是必需的,因此可能不会在运行时出现。
然而,您可以像先前建议的那样获取.class文件的位置。
'System.getProperty(“user.dir”)'给你你启动可执行文件的目录。运行时不存在'.java'文件。 –
.class文件会存在,我能以某种方式使用它吗? – sportsfan72
您正在创建该文件,因此您可以控制其创建位置。 –