Skip to content

要在 Java 中读取classpath资源,您可以使用ClassLoader.getResourceAsStream()方法。这个方法接受一个相对于classpath的资源路径,并返回一个InputStream对象,您可以用来读取该资源的内容。

下面是一个示例代码,演示如何读取classpath资源:

import java.io.InputStream;

public class ReadClasspathResource {
    public static void main(String[] args) {
        // 获取当前类所在的ClassLoader
        ClassLoader classLoader = ReadClasspathResource.class.getClassLoader();

        // 读取classpath下的资源文件
        String resourcePath = "myresource.txt";
        InputStream inputStream = classLoader.getResourceAsStream(resourcePath);

        if (inputStream != null) {
            // 读取资源内容
            try {
                int data;
                while ((data = inputStream.read()) != -1) {
                    System.out.print((char) data);
                }
                inputStream.close();
            } catch (Exception e) {
                e.printStackTrace();
            }
        } else {
            System.out.println("无法找到资源文件:" + resourcePath);
        }
    }
}

上述代码假设存在一个名为myresource.txt的文本文件位于classpath根目录下。它通过获取当前类的ClassLoader,并调用getResourceAsStream()方法来读取资源文件。然后,使用InputStream逐字节读取并打印资源文件的内容。

请确保将实际的资源文件路径替换为您要读取的资源文件的路径。