在Java中,要獲取內部資源(例如,位于src/main/resources
目錄下的文件),可以使用ClassLoader
的getResourceAsStream()
方法。以下是一個示例:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) {
// 獲取內部資源文件的輸入流
InputStream inputStream = Main.class.getClassLoader().getResourceAsStream("example.txt");
// 使用BufferedReader讀取輸入流的內容
try (BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream))) {
String line;
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (inputStream != null) {
inputStream.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
在這個示例中,我們首先使用Main.class.getClassLoader().getResourceAsStream("example.txt")
獲取內部資源文件example.txt
的輸入流。然后,我們使用BufferedReader
讀取輸入流的內容并將其打印到控制臺。最后,我們確保關閉輸入流以釋放資源。