Java ile dosya oluşturma, yazma ve okuma işlemlerini içeren örnek kodlar;
Öncelikle java ile dosya nasıl oluşturulur onu inceleyelim. Java ile dosya oluşturmak için FileOutputStream sınıfından bir nesne üretip, üretilen nesneye dosya yolunu parametre olarak geçeceğiz.
Aşağıdaki kodda C sürücüsünde YazilimBilisim Klasörü(klasörün var olduğunu sayıyoruz) içinde test.txt adında bir dosya oluşturduk.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
String dosyaYolu = "C://YazilimBilisim//test.txt"; /* * FileOutputStream nesnesine dosya yolunu parametre geçerek dosya oluşturma, */ try { FileOutputStream fos = new FileOutputStream(dosyaYolu); } catch(FileNotFoundException ex) { System.out.println("Hata : " + ex); } |
FileOutputStream nesnesinin write metodunu kullanarak dosyaya kaydetme yazma işlemini gerçekleştirdik. Dosya yazma işlemini bitirdikten sonra close metotu ile dosyayı kapattık.
Dosyaya yazma işlemi sırasında hata verme olasılığı yüksek olduğu için zorunlu olarak IOException hata yakalamayı eklemeliyiz.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
public static void main(String[] args) { String dosyaYolu = "C://YazilimBilisim//test.txt"; /* * FileOutputStream nesnesine dosya yolunu parametre geçerek dosya oluşturma, */ try { FileOutputStream fos = new FileOutputStream(dosyaYolu); String yazi = "Yazılım Bişim Programlama"; /* * Byte dizisini dosyaya yazmak için FileOutputStream sınıfının write metodu kullanılır. * void write(byte[] bArray) method * * Bu metot byte dizisi almaktadır. */ fos.write(yazi.getBytes()); /* * FileOutputStream nesnesinin * void close() methodu kullanılır. * */ fos.close(); } catch(FileNotFoundException ex) { System.out.println("Dosya Bulunamadı Hatası : " + ex); } catch(IOException ioe) { System.out.println("Giriş Hatası : " + ioe); } } |
[divider]
JAVA DOSYA OLUŞTURMA & YAZMA
Ancak bu şekilde kullanıldığında ANSI standardında yazacağı için Türkçe diline özgü karakterler görünmeyecektir. Yazma işlemi için OutputStreamWriter nesnesinUTF-8 dil desteği ile oluşturuyoruz.
1 2 3 4 5 6 7 8 |
FileOutputStream fos = new FileOutputStream(dosyaYolu); OutputStreamWriter osw=new OutputStreamWriter(fos,"UTF-8"); osw.write("yazılım bilişim programlama 2"); osw.close(); |
Main metodunun görünümü;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
String dosyaYolu = "C://YazilimBilisim//test.txt"; try { FileOutputStream fos = new FileOutputStream(dosyaYolu); OutputStreamWriter osw=new OutputStreamWriter(fos,"UTF-8"); osw.write("yazılım bilişim programlama 2"); osw.close(); } catch (UnsupportedEncodingException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch(FileNotFoundException ex) { System.out.println("Hata : " + ex); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } |
[divider]
JAVA DOSYA OKUMA
File sınıfı ile yeni bir dosya nesnesini oluşturup UTF-8 desteği ile okumak için oku nesnesini oluşturduk.
1 2 3 4 5 6 7 |
File dosya = new File(dosyaYolu); BufferedReader oku = new BufferedReader( new InputStreamReader( new FileInputStream(dosya), "UTF8")); |
dosyayı while ile satır satır okuyup, satır sonu olduğunda açtığımız dosyayı kapatttık.
1 2 3 4 5 6 7 8 9 |
String str; while ((str = oku.readLine()) != null) { System.out.println(str); } oku.close(); |
Main Metodunun Görünümü;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
String dosyaYolu = "C://YazilimBilisim//test2.txt"; /*DOSYA OKUMA*/ try { File dosya = new File(dosyaYolu); BufferedReader oku = new BufferedReader( new InputStreamReader( new FileInputStream(dosya), "UTF8")); String str; while ((str = oku.readLine()) != null) { System.out.println(str); } oku.close(); } catch (UnsupportedEncodingException e) { System.out.println(e.getMessage()); } catch (IOException e) { System.out.println(e.getMessage()); } catch (Exception e) { System.out.println(e.getMessage()); } |
[divider]
Dosya Yazma ve Okuma Örneği;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
public static void main(String[] args) { //dosya yolu String dosyaYolu = "C://YazilimBilisim//test2.txt"; /*DOSYA OLUŞTURMA VE YAZMA*/ try { FileOutputStream fos = new FileOutputStream(dosyaYolu); OutputStreamWriter osw=new OutputStreamWriter(fos,"UTF-8"); osw.write("yazılım bilişim programlama 2"); osw.close(); } catch (UnsupportedEncodingException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch(FileNotFoundException ex) { System.out.println("Hata : " + ex); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } /*DOSYA OKUMA*/ try { File dosya = new File(dosyaYolu); BufferedReader oku = new BufferedReader( new InputStreamReader( new FileInputStream(dosya), "UTF8")); String str; while ((str = oku.readLine()) != null) { System.out.println(str); } oku.close(); } catch (UnsupportedEncodingException e) { System.out.println(e.getMessage()); } catch (IOException e) { System.out.println(e.getMessage()); } catch (Exception e) { System.out.println(e.getMessage()); } } |