java讀取resource目錄下文件的方法示例
本文主要介紹的是java讀取resource目錄下文件的方法,比如這是你的src目錄的結(jié)構(gòu)
├── main │ ├── java │ │ └── com │ │ └── test │ │ └── core │ │ ├── bean │ │ ├── Test.java │ └── resources │ └── test │ ├── test.txt └── test └── java
我們希望在Test.java中讀取test.txt文件中的內(nèi)容,那么我們可以借助Guava庫的Resource類
示例代碼如下
public class TestDemo {
public static void main(String args[]) throws InterruptedException, URISyntaxException, IOException {
BufferedInputStream bufferedInputStream = (BufferedInputStream) Resources.getResource("test/test.txt").getContent();
byte[] bs = new byte[1024];
while (bufferedInputStream.read(bs) != -1) {
System.out.println(new String(bs));
}
}
}
核心函數(shù)就是Resources.getResource,該函數(shù)其實封裝了下述代碼:
public static URL getResource(String resourceName) {
ClassLoader loader = MoreObjects.firstNonNull(
Thread.currentThread().getContextClassLoader(),
Resources.class.getClassLoader());
URL url = loader.getResource(resourceName);
checkArgument(url != null, "resource %s not found.", resourceName);
return url;
}
上述代碼的核心邏輯很簡單,即通過獲取classloader來獲取resource文件
如果想引入google的guava庫,如果你采用的是maven工程的話,可以在pom.xml中加入下面代碼:
<dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>19.0</version> </dependency>
總結(jié)
以上就是關(guān)于java讀取resource目錄下文件的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流。
相關(guān)文章
SpringSecurity動態(tài)加載用戶角色權(quán)限實現(xiàn)登錄及鑒權(quán)功能
這篇文章主要介紹了SpringSecurity動態(tài)加載用戶角色權(quán)限實現(xiàn)登錄及鑒權(quán)功能,很多朋友感覺這個功能很難,今天小編通過實例代碼給大家講解,需要的朋友可以參考下2019-11-11
SpringBoot整合Spring Security的詳細教程
這篇文章主要介紹了SpringBoot整合Spring Security的方法,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-08-08
mybatis中orderBy(排序字段)和sort(排序方式)引起的bug及解決
這篇文章主要介紹了mybatis中orderBy(排序字段)和sort(排序方式)引起的bug,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-01-01

