java如何加载读取本地resource(classes)资源呢?
下文笔者讲述加载读取本地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();
}
}
}
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。


