如何使用相对路径计算java中文件的实际路径?

时间:2012-10-23 13:29:43

标签: java-ee

我创建了动态网络项目。在那里,我编写了一个Java类,它打开一个属性文件,并返回传递给函数的键的值。

但是要打开属性文件,我必须写一个像c:/Apache/webapps/webcontent/resources/system.properties这样的完整路径。但是我想用相对路径计算这个文件的真实路径。

如何计算真实路径?这不是一个servlet,它是一个只有一个类及其方法的完整Java文件。如何计算文件的实际路径?

1 个答案:

答案 0 :(得分:0)

如果您使用相对路径加载File,则调用File.getCanonicalPath()File.getAbsolutePath()将为您提供绝对路径。

使用应用服务器时,您的工作目录将是您的应用服务器的起始位置,因此要使用相对路径获取File的绝对路径,您需要执行以下操作:

String relativePath = '/mypath/myfile.txt';
String absolutePath = getServletContext().getRealPath(relativePath);
File file = new File(absolutePath);