2014-11-02 76 views
3

我不得不把我的代碼從1.8移到1.6,並且我得到了「源代碼級別低於1.7」的資源規範不允許的錯誤。下面你會看到一部分,我得到了線條機智的嘗試,而同時:)。我能做些什麼來解決這個問題?如何解決「源代碼級別低於1.7的資源規範」?

StringBuilder resultKamera2 = new StringBuilder(); 

       { 
       try (BufferedReader brKamera2 = new BufferedReader(new FileReader("D:/test1.txt"))) { 
       while ((lineKamera2 = brKamera2.readLine()) != null) { 

       Matcher categoryMatcherKamera2 = CategorieKamera2.matcher(lineKamera2);      
       Matcher itemMatcherKamera2 = CategorieSiCantitateKamera2.matcher(lineKamera2); 

回答

6

嘗試資源語句在Java SE 7中引入你需要採取的BufferedReader聲明瞭這樣的括號:

StringBuilder resultKamera2 = new StringBuilder(); 

      { 
      try { 
       BufferedReader brKamera2 = new BufferedReader(new FileReader("D:/test1.txt") 
       while ((lineKamera2 = brKamera2.readLine()) != null) { 

       Matcher categoryMatcherKamera2 = CategorieKamera2.matcher(lineKamera2);     
       Matcher itemMatcherKamera2 = CategorieSiCantitateKamera2.matcher(lineKamera2); 

然後,以保證流將被關閉(試用資源聲明自動爲你做)你可以把終於塊關閉這樣的流:

try { 
    (...) 
} finally { 
    brKamera2.close(); 
}