`

getResourceAsStream的用法

阅读更多
首先,Java中的getResourceAsStream有以下几种:

1. Class.getResourceAsStream(String path) : path 不以’/'开头时默认是从此类所在的包下取资源,以’/'开头则是从ClassPath根下获取。其只是通过path构造一个绝对路径,最终还是由ClassLoader获取资源。

2. Class.getClassLoader.getResourceAsStream(String path) :默认则是从ClassPath根下获取,path不能以’/'开头,最终是由ClassLoader获取资源。

3. ServletContext. getResourceAsStream(String path):默认从WebAPP根目录下取资源,Tomcat下path是否以’/'开头无所谓,当然这和具体的容器实现有关。

4. Jsp下的application内置对象就是上面的ServletContext的一种实现。

其次,getResourceAsStream 用法大致有以下几种:

第一: 要加载的文件和.class文件在同一目录下,例如:com.x.y 下有类me.class ,同时有资源文件myfile.xml

那么,应该有如下代码:

me.class.getResourceAsStream("myfile.xml");

第二:在me.class目录的子目录下,例如:com.x.y 下有类me.class ,同时在 com.x.y.file 目录下有资源文件myfile.xml

那么,应该有如下代码:

me.class.getResourceAsStream("file/myfile.xml");

第三:不在me.class目录下,也不在子目录下,例如:com.x.y 下有类me.class ,同时在 com.x.file 目录下有资源文件myfile.xml

那么,应该有如下代码:

me.class.getResourceAsStream("/com/x/file/myfile.xml");

总结一下,可能只是两种写法

第一:前面有 “   / ”

“ / ”代表了工程的根目录,例如工程名叫做myproject,“ / ”代表了myproject

me.class.getResourceAsStream("/com/x/file/myfile.xml");

第二:前面没有 “   / ”

代表当前类的目录

me.class.getResourceAsStream("myfile.xml");

me.class.getResourceAsStream("file/myfile.xml");

http://riddickbryant.iteye.com/blog/436693
分享到:
评论

相关推荐

    Java中getResourceAsStream用法分析

    在Java编程中,`getResourceAsStream` 是一个非常实用的方法,用于从类路径或者特定上下文中获取资源流,通常用来读取配置文件、图片、XML文档等静态资源。这个方法在处理与代码打包在一起的非代码文件时非常方便。...

    Java中getResourceAsStream的用法.md

    Java中getResourceAsStream的用法.md

    Java 使用getClass().getResourceAsStream()方法获取资源

    需要注意的是,`getResourceAsStream()`方法返回的是`InputStream`,这意味着你需要使用流处理的方式读取资源内容。例如,你可以使用`BufferedReader`或者`IOUtils`(Apache Commons IO库)来读取和处理流中的数据。...

    java-loadresource.rar

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

    java读取资源文件

    - 使用`Class.getResource()`或`Class.getResourceAsStream()`方法: - `getResource()`返回一个`URL`对象,适合处理网络或磁盘上的资源。 - `getResourceAsStream()`返回一个`InputStream`,适用于读取二进制...

    Java文件路径详解

    Java 文件路径详解是 Java 中获取文件路径的方式,包括 Class.getResourceAsStream() 和 ClassLoader.getResourceAsStream() 两种方法。这些方法可以帮助开发者快速获取文件路径,以便于读取文件的内容。

    使用J2SE API读取Properties文件的六种方法

    在Servlet环境下,还可以使用`javax.servlet.ServletContext`的`getResourceAsStream()`方法来读取Web应用中的资源。例如: ```java String path = "/WEB-INF/config.properties"; InputStream in = context....

    java类读取配置文件信息

    在Java类中,读取配置文件信息可以使用多种方法,其中一种方法是使用`this.getClass().getClassLoader().getResourceAsStream`方法。 `this.getClass().getClassLoader().getResourceAsStream`方法是Java类中的一种...

    Java加载properties文件的六种方法

    5. **使用 `class.getClassLoader()` 所得到的 `java.lang.ClassLoader` 的 `getResourceAsStream()` 方法** 这种方法与第4种类似,只是通过类加载器获取资源输入流。示例: ```java InputStream in = ...

    java文件路径获取

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

    java读取proterties的六种方法

    在Servlet环境下,还可以使用 `javax.servlet.ServletContext` 的 `getResourceAsStream()` 方法来加载资源,适合部署在Web应用服务器中: ```java ServletContext context = ...; // 获取ServletContext实例 ...

    从java jar文件包中读资源的常用方法

    此方法与`getResourceAsStream`类似,但返回的是`URL`对象,可用于进一步处理,如打开网络连接或获取文件输入流: ```java URL resourceUrl = getClass().getResource("/image/Environment.ini"); ``` #### 3. ...

    读取jar文件

    2. **使用`getResourceAsStream`方法**:此方法直接返回一个`InputStream`对象,可以用来读取资源文件的内容。 #### 四、常见问题与解决方案 1. **资源文件无法找到**: - 检查资源文件的路径是否正确,特别是是否...

    Java工程中资源文件的用法

    2. **获取输入流**:使用类加载器的`getResourceAsStream()`方法来获取指向资源文件的输入流。这通常在类的静态初始化块或构造函数中完成,确保文件被正确加载。 3. **加载属性**:调用`Properties`对象的`load()`...

    Java读取Properties文件几种方法总结

    在上面的代码中,我们使用getResourceAsStream()方法将Properties文件加载到InputStream对象中,然后使用load()方法将Properties文件加载到Properties对象中。 方法五:使用class.getClassLoader()所得到的java....

    jar包里读取图片.rar ,,自己写的例子

    总结来说,从JAR包中读取图片涉及对Java类路径的理解,以及正确使用`getResource()`或`getResourceAsStream()`方法。在实际项目中,这通常是通过封装在静态方法或工具类中,以便在多个地方复用。对于开发者来说,...

    Ajax读取txt+移动伸缩DIv

    "Java中getResourceAsStream的用法.txt"可能是关于Java编程的一个指南,Java的`getResourceAsStream`方法用于在类路径中查找资源,但这里并不直接关联到Ajax和前端开发。而“查看本月.txt”可能是一个包含文本内容的...

    java 读properties 文件六种方法

    ### 方法四:使用`Class`对象的`getResourceAsStream()`方法 这种方法允许你根据类路径中的资源名称读取Properties文件。 ```java import java.io.InputStream; import java.util.Properties; public class ...

    Java 读取资源文件

    - 如果你的资源文件是Java项目的一部分,你可以在类路径中直接导入它们,然后使用`getClass().getResource()`或`getClass().getResourceAsStream()`方法。 4. 文件系统访问 - 如果资源文件位于文件系统的某个位置...

    使用J2SEAPI读取Properties文件的六种方法

    2. 使用ClassLoader的getResourceAsStream()方法 如果Properties文件与类文件在同一目录下,可以使用ClassLoader获取输入流。 ```java Properties props = new Properties(); InputStream in = getClass()....

Global site tag (gtag.js) - Google Analytics