Java Programlama Input/Output Javada Input/Output Dosya İşlemleri File Sınıfı; Bu sınıf dosyaya okuma yazma işlemleri yapmamız için yeterli değildir. Sadece dosya hakkında kullanışlı bilgiler elde etmemizi sağlar. Java dosyaları birer byte Streami olarak görür. Dosyalar end of file işaretcisi yada özel bir byte nuamarıyla sonlanır. Dosya işlemi gerçekleştirilirken dosya için bir byte stream nesnesi oluşturulur. Java da dosya işlemlerini gerçekleştirebilmek için projeye java.io paketini import etmemiz gerekir. Bu paket içerisinde FileInputStream(byte tabanlı input), FileOutputStream(byte tabanlı output), FileReader(karakter tabanlı input) ve FileWriter(karakter tabanlı output) sınıflarını içerir. Aynı zamanda Java da dosya okuma işlemlerinde psrformans artışı sağlamak için buffering kullanılır. Bu yapıda tüm outputlar belleğin buffer isimli bir bölümüne kopyalanırlar. Bufferlama işlemi için de BufferedOutputStream(dosya çıktısını bufferlar) ve BufferedInputStream(dosya girdisini bufferlar) classları mevcuttur. Javada Input/Output File Sınıfı-Örnek public class FileHakkinda { public static void main(String[] args) { // tam yolu tanımlayalım String path = "E:\\ornek.txt"; File file = new File(path); //verilen yol doğru mu değil mi? if(file.exists()) { if(file.isFile()) { System.out.println(file.getName() + " - bir dosyadır"); } System.out.println(file.length() + " - boyutu"); System.out.println(file.lastModified() + " - en son düzenlenme tarihi"); System.out.println(file.getPath() + " - yolu (path)"); if(file.isDirectory()) { System.out.println(file.getName() + " - bir klasördür"); System.out.println("ve bu klasör içerisindeki dosyalar :"); String[] klasor = file.list(); for(String dosya : klasor) { System.out.print(dosya + " "); } System.out.println(""); } } else { System.out.println("Böyle bir yol mevcut değildir."); } } } Javada Input/Output FileInputStream-DosyaOkuma-Örnek public class Okuma { public static void main(String[] args) { int i; boolean eof = false; try { FileInputStream f = new FileInputStream("E:\\filmlerim.txt"); // do { while (!eof){ i = f.read(); if (i != -1) { System.out.print((char)i); } } // } while (i != -1); } catch (IOException e) { System.out.println("Dosya acilamadi"); } } } Javada Input/Output BufferedReader-DosyaOkuma-Örnek public class Okuma2 { public static void main(String[] args) throws IOException { File file = new File("E:\\filmlerim.txt"); BufferedReader reader = null; reader = new BufferedReader(new FileReader(file)); String satir = reader.readLine(); while (satir!=null) { System.out.println(satir); satir = reader.readLine(); } } } Javada Input/Output BufferedWriter-DosyayaYazma-Örnek public class Yazma { public static void main(String[] args) { String giris; BufferedReader oku = new BufferedReader(new InputStreamReader(System.in)); System.out.print("Lutfen adinizi soyadinizi girin:"); try { giris = oku.readLine(); //BufferedWriter fw = new BufferedWriter (new FileWriter("E:\\yaz.txt")); FileWriter fw = new FileWriter(new File("E:\\yaz.txt")); //PrintWriter out = new PrintWriter (fw); //out.println(giris); fw.write(giris); System.out.println(giris + " Dosyaya yazildi"); fw.close(); } catch (IOException e) { } } }