2012-10-23 137 views
1

我已經創建了動態Web項目。在此我寫了一個Java類,它打開一個屬性文件並返回傳遞給該函數的鍵的值。如何使用相對路徑計算java中文件的實際路徑?

但是,要打開屬性文件,我必須寫一個像c:/Apache/webapps/webcontent/resources/system.properties一樣的整個路徑。但我想用相對路徑來計算這個文件的真實路徑。

如何計算真實路徑?這不是一個servlet,它是一個只有一個類及其方法的完整Java文件。我如何計算文件的真實路徑?

回答

0

如果使用相對路徑加載File,則調用File.getCanonicalPath()File.getAbsolutePath()會爲您提供絕對路徑。

當使用應用服務器,你的工作目錄將在您的應用服務器是從開始,因此要獲得使用相對路徑爲File的絕對路徑,你需要做的:

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

如果您可以使用相對路徑加載文件,您可以通過調用生成的File對象上的上述方法來獲取絕對路徑。 – doublesharp

+0

Thanks.its正在工作。 – Andy

+0

太棒了,你會介意將此標記爲答案嗎? – doublesharp