今天在写一个关于配置Excel导出路径通过properties文件配置的需求,通过查询我得知 properties文件通过 FileInputStream 读取
这是原先的代码,在上面的路径中,经过反复试验始终报路径未找到错误。
然后我通过 http://blog.csdn.net/jiadebin890724/article/details/7404554 这篇文章的启发查看了一下我的当前目录路径
控制台输出如下路径
结果是tomcat的bin目录,而并不是tomcat里所部属的webservice目录,遂修改如下:
更新2016/4/25:
以上路径在linex系统中会识别不出,这个问题是项目部署时发现的,跟新方式是使用java.io.File.separator在“/”或“\\”处替换。
public UpLoadFileTask(){
try {
this.prop = new Properties();
FileInputStream fis = new FileInputStream(".."+File.separator+"webapps"+File.separator+"dm"+File.separator+"WEB-INF"+File.separator+"classes"+File.separator+"upFile.properties");
this.prop.load(fis);
} catch (Exception e) {
System.out.println("读取属性文件失败");
e.printStackTrace();
}
}
所以说,当作为webservice部署到tomcat里时,若想使用当前目录,最好先使用System.out.println(new File(".").getAbsolutePath());查看一下当前目录是什么,因为他不一定是你的.class文件存放的目录,通常是
tomcat的bin目录,所以需要根据这个目录重新指定你想要到达的目录。
在此感谢 http://blog.csdn.net/jiadebin890724/article/details/7404554 GeekFans