码迷,mamicode.com
首页 > 编程语言 > 详细

JAVA获取文件的几种常用方式

时间:2017-07-12 17:43:27      阅读:210      评论:0      收藏:0      [点我收藏+]

标签:方式   path   log   读取   获取文件   csdn   height   color   ==   

1、user.dir

System.out.println(System.getProperty("user.dir"));

此方获取的是运行的路

比如

1、

技术分享

 

2、如果在eclipse上运行则是eclipse运行文件同级

技术分享

 

3、tomcat则在

技术分享

 

4、File file = new File("log4j.properties");

这里的log4j.properties也是在以上类型的目录下查找

 

5、FileInputStreaminput = newFileInputStream("log4j.properties");

与File一样,在运行路径上找文件

2、获取绝对路径

方法 String in = LogUtil.class.getResource("/").getPath();

或者:this.getClass().getClassLoader().getResource("/").getPath()

结果:

/E:/temp/springmvc/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/rentBook/WEB-INF/classes/

 

LogUtil.class.getResource("/").getPath(); 加个”/”就会打印classes下的绝对路径

LogUtil.class.getResource("").getPath(); 就会显示classes + 包名

 

Tomcat打印如下:

技术分享

 

WEB工程

this.getServletContext().getRealPath("/")

返回:

工程的绝对路径/返回的也称为“根”

比如工程:

Book

|_WEB-INF

|_xx.properties

返回d:\Book\

3、相对路径:

InputStream input = LogUtil.class.getResourceAsStream("/log4j.properties");

 

读取的是src/log4j.properties 下的文件

 

InputStream input = LogUtil.class.getResourceAsStream("log4j.properties");

 

读取的是 与LogUtil同级的log4j.properties

 

第二种:

getServletConfig().getServletContext()  
                .getResourceAsStream("report1.jasper")

访问的是根路径

 

 

Book

|_WEB-INF

|_xx.properties

|_report1.jasper

 

JAVA获取文件的几种常用方式

标签:方式   path   log   读取   获取文件   csdn   height   color   ==   

原文地址:http://www.cnblogs.com/pcpig/p/7156419.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!