java如何加载读取本地resource(classes)资源呢?

欣喜 Java经验 发布时间:2025-02-05 10:47:05 阅读数:15898 1
下文笔者讲述加载读取本地resource(classes)资源的方法及示例分享
借助 ClassLoader.getResourceAsStream 方法

借助 Class.getResourceAsStream 方法

借助 `Paths`和`Files`类 读取文件的方式加载资源文件

使用`ClassLoader.getResourceAsStream`方法

   import java.io.InputStream;
   import java.util.Scanner;

   public class ResourceLoader {
       public static void main(String[] args) {
           // 获取资源文件的输入流
           InputStream inputStream = ResourceLoader.class.getClassLoader().getResourceAsStream("filename.txt");
           if (inputStream != null) {
               try (Scanner scanner = new Scanner(inputStream, "UTF-8")) {
                   while (scanner.hasNextLine()) {
                       String line = scanner.nextLine();
                       System.out.println(line);
                   }
               }
           } else {
               System.out.println("文件未找到");
           }
       }
   }
 

使用`Class.getResourceAsStream`方法

 
 import java.io.InputStream;
   import java.util.Scanner;

   public class ResourceLoader {
       public static void main(String[] args) {
           // 获取资源文件的输入流
           InputStream inputStream = ResourceLoader.class.getResourceAsStream("/filename.txt");
           if (inputStream != null) {
               try (Scanner scanner = new Scanner(inputStream, "UTF-8")) {
                   while (scanner.hasNextLine()) {
                       String line = scanner.nextLine();
                       System.out.println(line);
                   }
               }
           } else {
               System.out.println("文件未找到");
           }
       }
   }

使用`Paths`和`Files`类

   import java.nio.file.Files;
   import java.nio.file.Paths;
   import java.io.IOException;

   public class ResourceLoader {
       public static void main(String[] args) {
           try {
               // 读取文件内容
               String content = new String(Files.readAllBytes(Paths.get("src/main/resources/filename.txt")));
               System.out.println(content);
           } catch (IOException e) {
               e.printStackTrace();
           }
       }
   }
   
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/JavaJingYan/202502/17387245098278.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者