`

java获取文件路径[转]

    博客分类:
  • Java
阅读更多

平时写程序的时候,很多时候提示文件找不到,而抛出了异常,现在整理如下 



一 相对路径的获得 
说明:相对路径(即不写明时候到底相对谁)均可通过以下方式获得(不论是一般的java项目还是web项目) 
String relativelyPath=System.getProperty("user.dir"); 
上述相对路径中,java项目中的文件是相对于项目的根目录 
web项目中的文件路径视不同的web服务器不同而不同(tomcat是相对于 tomcat安装目录\bin) 


二 类加载目录的获得(即当运行时某一类时获得其装载目录) 
1.1)通用的方法一(不论是一般的java项目还是web项目,先定位到能看到包路径的第一级目录) 

InputStream is=TestAction.class.getClassLoader().getResourceAsStream("test.txt"); 
(test.txt文件的路径为 项目名\src\test.txt;类TestAction所在包的第一级目录位于src目录下) 

上式中将TestAction,test.txt替换成对应成相应的类名和文件名字即可 

1.2)通用方法二 (此方法和1.1中的方法类似,不同的是此方法必须以'/'开头,参考http://riddickbryant.iteye.com/blog/436693) 
InputStream is=Test1.class.getResourceAsStream("/test.txt"); 
(test.txt文件的路径为 项目名\src\test.txt,类Test1所在包的第一级目录位于src目录下) 




三 web项目根目录的获得(发布之后) 
1 从servlet出发 

可建立一个servlet在其的init方法中写入如下语句 
ServletContext s1=this.getServletContext(); 
String temp=s1.getRealPath("/"); (关键) 
结果形如:D:\工具\Tomcat-6.0\webapps\002_ext\ (002_ext为项目名字) 

如果是调用了s1.getRealPath("")则输出D:\工具\Tomcat-6.0\webapps\002_ext(少了一个"\") 

2 从httpServletRequest出发 

String cp11111=request.getSession().getServletContext().getRealPath("/"); 

结果形如:D:\工具\Tomcat-6.0\webapps\002_ext\ 





四 classpath的获取(在Eclipse中为获得src或者classes目录的路径) 

方法一 Thread.currentThread().getContextClassLoader().getResource("").getPath() 



eg: String t=Thread.currentThread().getContextClassLoader().getResource("").getPath(); 
System.out.println("t---"+t); 

输出:t---/E:/order/002_ext/WebRoot/WEB-INF/classes/ 







方法二 JdomParse.class.getClassLoader().getResource("").getPath() (JdomParse为src某一个包中的类,下同) 

eg:String p1=JdomParse.class.getClassLoader().getResource("").getPath(); 
System.out.println("JdomParse.class.getClassLoader().getResource--"+p1); 

输出: JdomParse.class.getClassLoader().getResource--/E:/order/002_ext/WebRoot/WEB-INF/classes/ 



另外,如果想把文件放在某一包中,则可以 通过以下方式获得到文件(先定位到该包的最后一级目录) 

eg String p2=JdomParse.class.getResource("").getPath(); 
System.out.println("JdomParse.class.getResource---"+p2); 

输出: JdomParse.class.getResource---/E:/order/002_ext/WebRoot/WEB-INF/classes/jdom/ (JdomParse为src目录下jdom包中的类) 



四 属性文件的读取: 

方法 一 

InputStream in = lnew BufferedInputStream( new FileInputStream(name));    Properties p = new Properties();   p.load(in); 



注意路径的问题,做执行之后就可以调用p.getProperty("name")得到对应属性的值 



方法二 

Locale locale = Locale.getDefault(); 
ResourceBundle localResource = ResourceBundle.getBundle("test/propertiesTest", locale); 
String value = localResource.getString("test"); 
System.out.println("ResourceBundle: " + value); 

工程src目录下propertiesTest.properties(名字后缀必须为properties)文件内容如下: 

test=hello word 

分享到:
评论

相关推荐

    java文件路径获取

    本文将详细介绍Java中获取文件路径的各种方法及其应用场景,帮助开发者更好地理解和掌握这些技巧。 #### 二、基本概念 在深入讨论之前,我们需要了解几个基本概念: - **Classpath**: 是Java运行环境的一个重要...

    Java中获取文件路径的几种方式

    理解如何在Java中获取文件路径,特别是区分绝对路径和相对路径,对于构建稳定、可移植的应用程序至关重要。本文将深入探讨Java中获取文件路径的多种方法,以及这些方法背后的原理。 ### 一、Java中的路径类型 ####...

    JAVA获取各种路径总结

    - 这些方法非常灵活,可以用于获取各种类型的资源文件路径。 通过以上介绍,我们可以看到,在Java开发中,无论是Web开发还是普通的Java应用程序开发,获取路径都是一个非常重要且实用的功能。掌握这些方法,可以...

    java中获取路径

    java、servlet、jsp、class等等中如何获得所在的路径

    JAVA中获取各种路径

    以下是对标题“JAVA中获取各种路径”及其描述和部分内答所提及的几种路径获取方法的详细解析。 ### 1. JSP中的路径获取 #### (1) 获取当前页面的完整路径:`request.getRequestURI()` 此方法返回客户端请求的当前...

    java项目中获取路径详解

    Java 项目中获取路径详解 在 Java 项目中,获取路径是非常重要的,因为它关系到项目的正确运行。特别是在 Java Web 项目中,获取路径变得更加复杂。下面我们将详细讨论 Java 项目中获取路径的方法和注意事项。 ...

    java 获取桌面路径

    在Java编程语言中,获取桌面路径是常见的操作,特别是在需要创建、打开或保存文件到用户桌面时。这个过程涉及到对操作系统环境的访问,因为不同操作系统中的桌面路径是不同的。以下是一些关于如何在Java中获取桌面...

    java获取文件创建时间

    ### Java 获取文件创建时间 在Java中,获取文件的创建时间并不像获取文件的最后修改时间那样简单直接。这是因为Java标准库(JDK)在早期版本中并没有提供直接获取文件创建时间的方法。不过,从Java 7开始,通过NIO...

    ant自动获取文件路径

    标题“ant自动获取文件路径”涉及的是Apache Ant这一构建自动化工具在处理文件路径时的技巧。Apache Ant是一个基于Java的构建工具,它被广泛用于Java项目中,类似于Unix的make,但依赖于XML来描述构建过程。在Ant中...

    JAVA获取项目路径.doc

    ### JAVA获取项目路径 在Java开发中,获取项目的路径是一个非常常见的需求,尤其是在处理文件读写、资源定位等场景时尤为重要。本文将详细介绍如何通过不同的方法来获取项目的各种路径,并结合示例代码进行说明。 ...

    Java获得某个路径下的所有文件列表,并写入指定文件

    创建一个`BufferedWriter`用于写入文件,然后将每个文件路径转换为字符串并写入: ```java BufferedWriter writer = new BufferedWriter(new FileWriter("output.txt")); stream.forEach(path -> { try { ...

    总结一下java获取路径几种途径

    自Java 7起,引入了`java.nio.file`包下的`Path`类,其对文件路径的操作更为直观和方便。 ```java // 获取Path对象,指向当前目录下的example.txt文件 Path path = Paths.get("example.txt"); // 获取绝对路径 Path...

    JAVA获取文件编码格式

    标题提到的“JAVA获取文件编码格式”是一项常见的任务,特别是在处理来自不同来源的文本文件时。在这种情况下,我们可以利用第三方开源库来帮助我们完成这项工作。描述中提到了一个叫做"cpdetector"的工具,这是一个...

    JAVA获取FTP文件列表

    ### JAVA获取FTP文件列表知识点详解 #### 一、概述 在现代软件开发中,FTP(File Transfer Protocol)是一种广泛使用的协议,用于在网络上进行文件传输。本文档将详细介绍一个基于Java的实用工具类`FtpClientUtil`...

    java读取配置文件

    在Java编程中,读取配置文件是常见的任务,特别是在开发需要灵活配置的系统时。配置文件通常用于存储应用程序的设置,如数据库连接信息、服务器端口、第三方服务的API密钥等,这些信息可能需要根据不同的环境或需求...

    windows linux 下,获取java项目绝对路径的方法

    windows linux 下,获取java项目绝对路径的方法,struts2设置了struts.multipart.saveDir后会在根目录建立文件夹,这样会涉及linux下的权限问题

    获取文件路径

    在IT领域,获取文件路径是一项基础且至关重要的操作。它涉及到操作系统如何管理和访问存储在硬盘或其他存储设备上的文件。在编程中,理解并能够正确处理文件路径是进行读写文件、移动文件、复制文件等操作的前提。...

    JAVA获取文件绝对路径的方法

    选择合适的方法取决于你是否需要访问类路径中的资源,或者只是简单地获取文件系统的文件路径。在进行文件操作时,确保正确处理路径是非常重要的,因为错误的路径可能导致文件找不到或者出现其他运行时错误。

    Java文件路径详解

    Java 文件路径详解是一种在 Java 中获取文件路径的方式。它可以将文件路径转换为 InputStream,以便于读取文件的内容。在 Java 中,有两种方式可以获取文件路径,即使用 Class.getResourceAsStream() 和 ClassLoader...

    java获取jdk路径

    在Java编程中,获取JDK(Java ...总结一下,Java获取JDK路径的方法主要涉及读取环境变量和通过正则表达式匹配。在实际操作中,开发者需要根据具体系统环境和需求灵活处理,确保找到的路径是准确无误的JDK安装位置。

Global site tag (gtag.js) - Google Analytics