我使用了下面的代码,它提供了正确的文件路径,我用来
System.getProperty("user.dir")
获取当前工作目录并System.getenv("ProgramFiles")
检查程序文件名。
`
String downloadDir = "..\\webapps\\demoproject\\files";
String currentdir = System.getProperty("user.dir");
String programFiles = System.getenv("ProgramFiles");
String filePath = "";
if(programFiles.equals("C:\\Program Files"))
{
filePath = currentdir + "\\" + downloadDir + "\\demo.pdf";
}
else
{
filePath = currentdir + "\\" + "bin"+ "\\" + downloadDir + "demo.pdf";
}
File pdfFile = new File(filePath);
String absolutePath = pdfFile.getAbsolutePath();
System.out.println(absolutePath);
`
执行以下代码后,我得到以下路径-
在 32 位
C:\Program Files\Apache Software Foundation\Tomcat6.0\bin\..\webapps\demoproject\files\demo.pdf
在 64 位上
C:\Program Files (x86)\Apache Software Foundation\Tomcat6.0\bin\..\webapps\demoproject\files\demo.pdf