在Java普通类中获取当前工程根目录

代码以下:windows

// 当前用户程序所在目录
String userDir = System.getProperties().getProperty("user.dir");

在windows环境下取得的路径是相似这样的:tomcat

D:/workspace/sms

由于Linux和windows的分隔符不一样,因此若是想获取具体文件绝地路径,须要这样写,例如获取WebRoot下的sys_param.xls文件路径:spa

// 分隔符
String fileSeperator = File.separator;
String templateFilePath = userDir + fileSeperator + "WebRoot" + fileSeperator + "sys_param.xls";

在windows环境下取得的路径是相似这样的:code

D:/workspace/sms/WebRoot/sys_param.xls

更新:
以上方法只能在本地运行起来,可是在tomcat上并不能获取到正确的路径。
应该使用如下方式:get

// arg0是从上面方法传下来的,类型是ServletContextEvent
String templateFilePath = arg0.getServletContext().getRealPath("sys_param.xls");
相关文章
相关标签/搜索