3 Ocak 2020 Cuma

Java Örnek ile Öğrenme Dosyaya Yazma Try Catch

try
{
    //hesaplanmak istenen ifade        
}
catch            
{
    //Bir hata türü tespit edilince verilmesi gereken mesaj
}            
catch            
{
    //başka Bir hata türü tespit edilince verilmesi gereken mesaj
}            
finally
{
    //her durumda çalıştırılacak olan kod parçası
}

Yukarıdaki yapıyı şöyle açıklayabiliriz:
try bloğu içinde hesaplanacak ifade yer alır. Bu ifadenin hesaplanmasında bir hata oluşmamışsacatch blokları atlanarak programın çalışması finally bloğu ile devam eder ve daha sonra programın bu bloğu izleyen kısmına geçilir.

try bloğu içindeki işlemde bir hata oluşmuşsacatch bloklarından hangisi bu hatayı algılayabiliyorsa o catch bloğu içine girilir ve gerekli hata mesajı yazdırılır. Daha sonra program finally bloğu ile yukarıda açıklandığı biçimde çalışmaya devam eder.

NOT: finally bloğu ne olursa olsun çalışacağından burada genellikle try bloğu içinde bellek hatalarına (memory leak gibi) ya da açık kalmış bağlantılara yol açabilecek değişkenler yok edilir.


1
2
3
4
5
import java.io.File; import java.io.FileWriter; import java.io.IOException; import java.util.*; public class DosyaYazmaTryCatch { public static void main(String args[]) { Scanner input=new Scanner(System.in); String kelime; System.out.println("Bir cümle giriniz..."); kelime=input.nextLine(); File dosya=new File("dosya.txt");//Dosya oluþturuyoruz istedigimiz isimle dosyaya //yazma iþelmei oldugu içiçn fileWriter oluþturuluyor. FileWriter dosyayaz=null; try { dosyayaz=new FileWriter(dosya, false);//iki degiþken almaktadýr.Bu degiþkenlere //göre oluþturulan file ve boolean bir deger verilmektedir. dosyayaz.write(kelime); System.out.println("Dosya yazma iþlemi gerçekleþtirildi."); } catch (Exception e) { System.out.println("Dosya hatasý : "+ e.getMessage()); } finally { try{ if(dosyayaz!=null) { dosyayaz.close();//FileWriter ile acýlan finally içinde close fonksiyonu ile kapatýldý. } }catch(Exception e) { System.out.println("Hata "+e.getMessage()); } } } }

Hiç yorum yok:

Yorum Gönderme