我创建了动态网络项目。在那里,我编写了一个Java类,它打开一个属性文件,并返回传递给函数的键的值。
但是要打开属性文件,我必须写一个像c:/Apache/webapps/webcontent/resources/system.properties
这样的完整路径。但是我想用相对路径计算这个文件的真实路径。
如何计算真实路径?这不是一个servlet,它是一个只有一个类及其方法的完整Java文件。如何计算文件的实际路径?
答案 0 :(得分:0)
如果您使用相对路径加载File
,则调用File.getCanonicalPath()
或File.getAbsolutePath()
将为您提供绝对路径。
使用应用服务器时,您的工作目录将是您的应用服务器的起始位置,因此要使用相对路径获取File
的绝对路径,您需要执行以下操作:
String relativePath = '/mypath/myfile.txt';
String absolutePath = getServletContext().getRealPath(relativePath);
File file = new File(absolutePath);