Java 讀取Properties文件時應注意的路徑問題


1. 使用Class的getResourceAsStream()方法讀取Properties文件(資源文件)的路徑問題:

       InputStream in = this.getClass().getResourceAsStream("資源Name");

    注意:

    (1)這種方式要求 Properties資源文件必須與當前類文件在同一個包下(同文件夾下) ,如果不在則會報空指針異常,如果不在同一個包(文件夾)下可以使用,如果方     

         式:

        InputStream in = this.getClass().getResourceAsStream("/testcase/test.txt"); 

        或

       InputStream in = PropertiesUtil.class.getResourceAsStream("/testcase/test.txt"); 

 

    (2)獲取獲取當前類所在的包路徑:

        String packagePath = this.getClass().getResource("").getPath();

 

2.使用Class.getClassLoader()的getResourceAsStream()讀取Properties文件(資源文件)的路徑問題:

      InputStream in = this.getClass().getClassLoader().getResourceAsStream("testcase/test.txt");

   注意:

   (1)使用getClassLoader()獲取的是classpath路徑;

  

   (2)雖然也可以使用Object.class.getClassLoader().getResourceAsStream("/testcase/test.txt")來獲取資源文件,但是如果在Web項目中的話,會得到一個Null值,所以

        保 險 起見,就是這個類的本身名字來直接獲取Class對象,如果我這個類為PropertiesUtil.java,可以使用如下方式獲取:

         PropertiesUtil.class.getClassLoader().getResourceAsStream("/testcase/test.txt");

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 ****************************************************************************************【來自我另一博文】

-轉


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM