總結從maven下resource資料夾讀取檔案的方法
阿新 • • 發佈:2019-01-12
小結從maven下resource資料夾讀取檔案的方法
在一個maven工程下,通常有resource資料夾,其中再存放相關的資原始檔,
比如resource下有個files資料夾,其中有個檔案叫test.txt,則讀取方法之一為:
呼叫方法為:obj.getFile("file/test.txt") 傳參的時候,最開始沒有'/' ;
2 使用apache commons的io包:
可以看到apache commons io包真方便
在一個maven工程下,通常有resource資料夾,其中再存放相關的資原始檔,
比如resource下有個files資料夾,其中有個檔案叫test.txt,則讀取方法之一為:
private String getFile(String fileName) { StringBuilder result = new StringBuilder(""); / ClassLoader classLoader = getClass().getClassLoader();
<span style="white-space:pre"> </span>//這一種直接得到的是File型別 File file = new File(classLoader.getResource(fileName).getFile());
<span style="white-space:pre"> </span>//這一種得到的是inputStream <span style="white-space:pre"> </span>//isr=new InputStreamReader(CountMobileDictJob.class.getClassLoader().<span style="color:#ff0000;">getResourceAsStream(</span><span style="color: rgb(255, 0, 0); font-family: Arial, Helvetica, sans-serif;">fileName</span><span style="color: rgb(255, 0, 0); font-family: Arial, Helvetica, sans-serif;">);</span><span style="color:#ff0000;"> </span> try (Scanner scanner = new Scanner(file)) { while (scanner.hasNextLine()) { String line = scanner.nextLine(); result.append(line).append("\n"); } scanner.close(); } catch (IOException e) { e.printStackTrace(); } return result.toString(); }
呼叫方法為:obj.getFile("file/test.txt") 傳參的時候,最開始沒有'/' ;
2 使用apache commons的io包:
String result = ""; ClassLoader classLoader = getClass().getClassLoader(); try { result = IOUtils.toString(classLoader.getResourceAsStream(fileName)); } catch (IOException e) { e.printStackTrace(); } return result; }
可以看到apache commons io包真方便
再分享一下我老師大神的人工智慧教程吧。零基礎!通俗易懂!風趣幽默!還帶黃段子!希望你也加入到我們人工智慧的隊伍中來!https://blog.csdn.net/jiangjunshow