Tôi muốn đóng luồng của tôi trong khối cuối cùng, nhưng nó ném một IOException
vì vậy có vẻ như tôi phải lồng một khối try
khác trong khối finally
của mình để đóng luồng. Đó có phải là cách đúng để làm điều đó không? Nó có vẻ hơi clunky.java cố gắng cuối cùng chặn để đóng dòng
Dưới đây là các mã:
public void read() {
try {
r = new BufferedReader(new InputStreamReader(address.openStream()));
String inLine;
while ((inLine = r.readLine()) != null) {
System.out.println(inLine);
}
} catch (IOException readException) {
readException.printStackTrace();
} finally {
try {
if (r!=null) r.close();
} catch (Exception e){
e.printStackTrace();
}
}
}
bản sao có thể có của [Có ưu tiên cho các khối try/catch lồng nhau không?] (Http://stackoverflow.com/questions/183499/is-there-a-preference-for-nested-try-catch-blocks) –