Class.getResource("") 返回的是当前Class这个类所在包开始的为置
Class.getResource("/") 返回的是classpath的位置
getClassLoader().getResource("") 返回的是classpath的位置
getClassLoader().getResource("/") 错误的!!
========================================================================
Class.getResourceAsStream 和 ClassLoader.getResourceAsStream
这两个方法还是略有区别的, 以前一直不加以区分,直到今天发现要写这样的代码的时候运行错误, 才把这个问题澄清了一下。
基本上,两个都可以用于从 classpath 里面进行资源读取, classpath包含classpath中的路径和classpath中的jar。
两个方法的区别是资源的定义不同, 一个主要用于相对与一个object取资源,而另一个用于取相对于classpath的资源,用的是绝对路径。
在使用Class.getResourceAsStream 时, 资源路径有两种方式, 一种以 / 开头,则这样的路径是指定绝对路径, 如果不以 / 开头, 则路径是相对与这个class所在的包的。
在使用ClassLoader.getResourceAsStream时, 路径直接使用相对于classpath的绝对路径。
相关推荐
### Java 文件路径获取方法详解 #### 一、引言 在Java开发中,经常会遇到需要获取文件路径的情况,尤其是在处理配置文件、图片等资源时。本文将详细介绍Java中获取文件路径的各种方法及其应用场景,帮助开发者更好...
在Java编程语言中,处理文件路径是开发过程中常见的需求之一。理解如何在Java中获取文件路径,特别是区分绝对路径和相对路径,对于构建稳定、可移植的应用程序至关重要。本文将深入探讨Java中获取文件路径的多种方法...
### JAVA中如何获取文件路径详解 #### 一、概述 在Java编程中,获取文件路径是一项基础而重要的技能。无论是处理本地文件还是部署在Web容器中的应用,了解如何正确地获取文件路径对于程序的正常运行至关重要。本文...
Properties props = Resources.asCharSource(Resources.getResource("config.properties"), Charsets.UTF_8).readLines(new Properties()); String dbUrl = props.getProperty("db.url"); ``` 7. **处理JSON或...
在 Java 项目中,获取相对路径可以使用 `getResource` 方法。这个方法可以返回当前类的相对路径。在静态方法中,可以使用 `Test.class.getResource("").getPath()`,而在非静态方法中,可以使用 `this.getClass()....
通过以上分析可以看出,在Java中处理文件路径时,根据不同的应用场景选择合适的路径表示方式非常重要。无论是相对路径还是绝对路径,都需要结合具体的项目结构和文件存储位置进行合理的设置。此外,还需要注意不同...
Java文件路径操作是Java开发中常见且重要的任务,尤其是在处理资源文件、配置文件或进行文件系统交互时。本文将深入探讨Java中与路径相关的概念、类型以及最佳实践。 首先,Java中的路径分为绝对路径和相对路径,...
在进行Java开发时,文件路径处理一直是令人头疼的问题之一。特别是在涉及跨平台或在不同环境中部署的应用程序时,路径问题更是频繁出现。本文旨在深入探讨Java路径问题,并提供一种有效且通用的解决方案。 #### 二...
System.out.println(Thread.currentThread().getContextClassLoader().getResource("")); System.out.println(FileTest.class.getClassLoader().getResource("")); System.out.println(ClassLoader....
选择合适的方法取决于你是否需要访问类路径中的资源,或者只是简单地获取文件系统的文件路径。在进行文件操作时,确保正确处理路径是非常重要的,因为错误的路径可能导致文件找不到或者出现其他运行时错误。
2. `FileTest.class.getResource("/")`:这个方法会返回当前classpath的绝对URI路径,即`file:/D:/java/eclipse32/workspace/jbpmtest3/bin/`,这是项目根目录的位置。 3. `Thread.currentThread()....
在 Java 中,我们可以使用 `类名.class.getClassLoader().getResource("").getPath()` 来获取编译后 class 文件目录的绝对路径。 3. JSP 编程中获得当前实际运用的相对路径和绝对路径根列表所对应的绝对路径 在 ...
- `this.getClass().getClassLoader().getResource("").getPath()`:获取`classes`目录下的绝对路径。 - 示例:`/D:/workspace/strutsTest/WebRoot/WEB-INF/classes/` 3. **通过`ServletContext`对象获取路径**:...
自Java 7起,引入了`java.nio.file`包下的`Path`类,其对文件路径的操作更为直观和方便。 ```java // 获取Path对象,指向当前目录下的example.txt文件 Path path = Paths.get("example.txt"); // 获取绝对路径 Path...
#### (1) 获取类的资源路径:`Class.class.getClass().getResource("/").getPath()` 此方法返回类的资源路径,通常用于获取与类相关的资源文件,例如`/D:/TEST/WebRoot/WEB-INF/classes/pack/`,这在加载配置文件、...
3. 解析URL为本地文件路径 一旦有了URL,我们可以将其转换为`File`对象,从而获取本地文件系统的路径: ```java File file = new File(resourceUrl.getFile()); String filePath = file.getAbsolutePath(); // ...
本文将深入探讨Java中的相对路径,这是在处理文件和目录时经常会遇到的一个关键主题。相对路径是相对于当前工作目录或某个已知起点的文件或目录的路径表示方式,与绝对路径(完整描述文件或目录位置的路径)相比,...
在Java开发过程中,处理文件路径问题时常令人头痛。本文将深入探讨Java中的路径问题,并提供一个有效的解决方案,该方案旨在简化路径处理过程,使得开发者能够更加灵活地管理和访问不同环境下的资源。 #### 二、...
在Eclipse中,为了保证代码在其他环境中也能正常工作,建议使用绝对路径或者基于类加载器的资源获取方式(如`ClassLoader.getResource()`或`ClassLoader.getResourceAsStream()`),而不是依赖于工作空间的相对路径...