Bir şey yapan aşağıdaki Java Sınıfı var, config.properties değerlerini dışarı atar. o fileInputStream
kapatmak için zamanı geldiğindefileInputStream.close'u try/catch/finally bloğu ile çevrelemem gerekiyor mu? Nasıl oldu?
, ben nihayet engellemek bir de ona sahip olmak iyi olduğunu Vikipedi'de okumuştum. Çünkü gerçekten denemek/yakalamak blokta gayet iyi çalışıyor.
bir nihayet bölümde fileInputStream.close()
almak için beni düzeltme gösterebilir misiniz?
ConfigProperties.java paket taban;
Çözüm yalnızca Eclipse'in önerdiği gibi yapmak ve bunu sonuncu satırda yapmak mı?
finally {
try {
fileInputStream.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
Herkese teşekkürler!
: commons-io
try
blok çıkışları Ancak, Java 7 tanıtımıyla, otomatik olarak beyan edilen kaynaklar kapanacaktry
-with-resource ifadeler şimdi vardır güzel bir işlevi vardır: IOUtils.closeQuietly(), yakın/deneyin try/catch ilgilenecek. Kodunuz çok daha güzel görünecektir :) Bu fonksiyonun IOException'a yanıt verme şansı vermediğini unutmayın, ancak genelde insanlar bunu yapmaz ve istisnai göz ardı ederler. Yanıt vermeniz gerekiyorsa, bir yığın izlemeyi ya da ne yapmanız gerekip gerekmediğini yazdıran veya kaydeden kendi yardımcı program yöntemini kullanın. – Matt