`

java 路径 getResource和getResourceAsStream

    博客分类:
  • java
阅读更多

http://ouyangfei0426.iteye.com/blog/1020232

 

src(源文件夹) -- classpath

┣━11.properties

┗━myspider(myspider包)
         ┃
         ┣━22.properties
         ┗━Test.java

 

Java代码  收藏代码
  1. package myspider;  
  2.   
  3. import java.io.UnsupportedEncodingException;  
  4.   
  5. /** 
  6.  * 
  7.  * @author mark 
  8.  */  
  9. public class Test {  
  10.     public static void main(String[] args) throws UnsupportedEncodingException{  
  11.         Test t=new Test();  
  12.         //文件名前不加“/”,则表示从当前类所在的包下查找该资源。如下则表示的是从包myspider下查找22.properties文件资源。  
  13.         System.out.println("1:"+t.getClass().getResourceAsStream("22.properties"));//输出java.io.BufferedInputStream@61de33  
  14.   
  15.         //文件名前加了“/”,则表示从类路径下也就是从classes文件夹下查找资源,如下表示从classes文件夹下查找22.properties文件资源。  
  16.         System.out.println("2:"+t.getClass().getResourceAsStream("/22.properties"));//输出null  
  17.   
  18.         //文件名前加了“/”,则表示从类路径下也就是从classes文件夹下查找资源,如下表示从classes文件夹下查找11.properties文件资源。  
  19.         System.out.println("3:"+t.getClass().getResourceAsStream("/11.properties"));//输出java.io.BufferedInputStream@14318bb  
  20.         System.out.println();  
  21.   
  22.         //当前包路径4:file:/E:/myobject/myspider/build/classes/myspider/  
  23.         System.out.println("4:"+t.getClass().getResource(""));  
  24.   
  25.         //输出当前类路径5:file:/E:/myobject/myspider/build/classes/  
  26.         System.out.println("5:"+t.getClass().getResource("/"));  
  27.   
  28.         /* 
  29.          * 如果类路径下的当前包有22.properties文件,则输出6:file:/E:/myobject/myspider/build/classes/myspider/22.properties 
  30.          * 否者输出源文件下的22.properties文件的路径,则输出:6:file:/E:/myobject/myspider/src/myspider/22.properties 
  31.          */  
  32.         System.out.println("6:"+t.getClass().getResource("22.properties"));  
  33.         /* 
  34.          * 如果类路径下有11.properties文件,则输出7:file:/E:/myobject/myspider/build/classes/11.properties 
  35.          * 否者输出源文件下的11.properties文件的路径,则输出:6:7:file:/E:/myobject/myspider/src/11.properties 
  36.          */  
  37.         System.out.println("7:"+t.getClass().getResource("/11.properties"));  
  38.   
  39.     }  
  40. }  
 
分享到:
评论

相关推荐

    java文件路径获取

    - 当使用`Class.getResource`或`Class.getResourceAsStream`时,如果路径不以 `/` 开头,那么查找将从调用该方法的类所在的包开始。 - 当使用`ClassLoader.getResource`或`ClassLoader.getResourceAsStream`时,路径...

    java项目中获取路径详解

    在 Java 项目中,获取相对路径可以使用 `getResource` 方法。这个方法可以返回当前类的相对路径。在静态方法中,可以使用 `Test.class.getResource("").getPath()`,而在非静态方法中,可以使用 `this.getClass()....

    Java路径问题

    要访问这些资源,可以使用`ClassLoader`类的静态方法`getResource`和`getResourceAsStream`。 **示例代码**: ```java URL resource = getClass().getClassLoader().getResource("com/test/resource.txt"); ``` ...

    java-loadresource.rar

    本篇文章将详细探讨Java提供的两种主要方法:`Class.getResource`和`Class.getResourceAsStream`,用于加载类路径下的资源文件。 首先,`Class.getResource`方法返回一个`URL`对象,它表示资源的位置。这个方法接受...

    Java路径问题最终解决方案之一.txt

    这种类型的路径在使用`ClassLoader`的`getResource`或`getResourceAsStream`方法时特别有用。 4. **相对于当前用户目录的相对路径**:这类路径基于`System.getProperty("user.dir")`返回的值。对于大多数项目而言...

    JAVA获取各种路径总结

    - **使用 `getResource` 和 `getResourceAsStream` 方法** - 示例: - `getClass().getResourceAsStream(filePath);` (`filePath` 例如为 "/filename",默认从 WEB-INF/classes 开始查找,适用于 Tomcat 等容器...

    Java路径问题最终解决方案.doc

    Java路径问题一直是开发者在处理文件操作时经常遇到的挑战,主要涉及到如何正确地定位和访问文件资源。在Java中,路径分为绝对路径和相对路径,这两种路径又有不同的表现形式。 一、URI形式的绝对资源路径 例如:...

    java中File的相对路径与绝对路径总结

    - **在使用`getResource()`方法时**,如果路径不以`/`开头,则默认是从调用该方法的类的所在位置开始查找,而以`/`开头则表示从类路径的根目录开始查找。 #### 总结 通过以上分析可以看出,在Java中处理文件路径时...

    Java路径问题汇总.pdf

    文档提到了将`getResource("")`返回的路径转换为`URL`和`URI`对象的方法。`.toURI().getPath()`会获取路径部分,而`new URL()`可以直接构造URL对象,它们之间可以相互转换。 ### 4. 文件与URL/URI的转换 在Java中...

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

    `ClassLoader`类的`getResource(String name)`、`getResourceAsStream(String name)`等方法,以及`ResourceBundle`类的`getBundle(String path)`都支持这种方式。这种方式不仅简化了路径管理,还避免了因环境变化...

    java类动态获取相对路径

    综上所述,通过结合`ClassLoader`、`getResource`和`File`等类,我们可以动态获取Java类的相对路径,实现对文件资源的有效管理。在实际应用中,可能还需要结合具体的项目结构和需求进行适当的调整。

    JAVA中如何得到文件路径.pdf

    2. **使用`Thread.currentThread().getContextClassLoader().getResource("")`**: - 获取当前线程上下文类加载器的资源路径。 - 示例代码: ```java System.out.println(Thread.currentThread()....

    Java Resource

    4. **尝试使用Resources类**:自Java 6开始,`java.nio`包下的`Resources`类提供了一种更简洁的方式来获取类路径中的资源,如`Resources.getResource("filename")`。 5. **资源的国际化**:在处理多语言环境时,...

    Java相对路径总结

    例如,`getClass().getResourceAsStream("/path/to/resource.txt")`将从类路径的根目录开始查找资源。 6. **Java的URL类**:除了`File`类,Java的`java.net.URL`类也可以处理路径,尤其在处理网络资源时。它可以...

    在Java程序中获取当前运行程序的路径

    首先,我们可以通过`java.lang.Class`类的`getResource`或`getResourceAsStream`方法来获取类路径中的资源文件路径。这两个方法都是在类路径中查找资源,返回一个URL对象,从中可以获取路径信息。例如,如果我们有一...

    java文件路径操作详细[归类].pdf

    例如,`ClassLoader`类的`getResource(String name)`和`getResourceAsStream(String name)`方法,以及`ResourceBundle`类的`getBundle(String path)`都是基于此类路径查找资源。 然而,尽管相对路径在使用上更为...

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

    当你需要获取与类相关的资源文件的绝对路径时,可以使用 `Class.getResource()` 或 `Class.getResourceAsStream()` 方法。这些方法返回一个 `java.net.URL` 对象,可以通过调用 `getPath()` 来获取路径字符串。例如...

    普通java类获取绝对路径

    1. **获取当前类的资源路径**:Java提供了一个内置的方法`getClass().getResource()`或`getClass().getResourceAsStream()`,它们可以从类路径中获取资源的URL。例如,如果你有一个名为`MyClass.class`的文件,你...

Global site tag (gtag.js) - Google Analytics