Java’da I/O işlemini streamler ile yaparız.
ByteStreams
8-bit’lik byteları okumak icin ByteStreams sınıfları kullanılır.Tüm ByteStream sınıfları InputStream ve OutputStream’lerden türemiştir.
Şimdi bu örnek için ilk önce istediğimiz bi yerde input.txt adında bi dosya oluşturalım.Ben C:// de oluşturdum.İçinede “Merhaba Java” yazdım.Herhangi bişey yazılabilir önemli değil.Şimdi kod üzerinden gidersek.
import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; public class IOIslemleri { public static void main(String[] args) throws FileNotFoundException{ FileInputStream fis = null; FileOutputStream fos = null; try { fis = new FileInputStream("C://input.txt"); fos = new FileOutputStream("C://output.txt"); int c; while((c=fis.read()) != -1){ fos.write(c); } fis.close(); fos.close(); } catch (Exception e) { System.out.println("HATA!!!"+e.getMessage()); } } }
|
import java.io.FileInputStream; /* Gereken Classlarımızı ekledik. import java.io.FileNotFoundException; Zaten ne yazcağımızı biliyorsak ,NetBeans import java.io.FileOutputStream; otomatik olarak import ediyor. */
|
FileInputStream fis = null; // Dosyayı okuyoruz.Burda boş değer veriyoruz. FileOutputStream fos = null; // Okunan dosyayı diğer dosyaya yazmak için. |
try { fis = new FileInputStream("C://input.txt"); // Okucağımız dosyayı seçtik.
fos = new FileOutputStream("C://output.txt"); //Okunan değerin yazılcağı dosya
int c; // bytestream’de karakter karakter okuduğu için int tipinde c tanımladık.
while((c=fis.read()) != -1){ /* c’ye fis.read() ten gelen byteları aktardık. Sonrada bu değeri != –1 diyerek tüm karakterlerin sonuna kadar okuncağını belirttik. */
fos.write(c); // okunan veriyide dosyamıza yazdırdık. }
|
fis.close(); // İşlem tamamlandıktan sonra FileInputStream ‘ i kapadık. fos.close(); // İşlem tamamlandıktan sonra FileOutputStream ‘ i kapadık. } catch (Exception e) { System.out.println("HATA!!!"+e.getMessage()); // HATA!!! dedik ve türünü yazdırdık. } |
Bu şekilde dosya okuyup yazabilceğimiz gibi istersek şu şekildede yapabiliriz.
import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; public class IOIslemleri { public static void main(String[] args) throws FileNotFoundException{ try{ File okunanDosya = new File("C://input.txt"); File yazilanDosya = new File("C://output.txt"); FileInputStream fis = new FileInputStream(okunanDosya); FileOutputStream fos = new FileOutputStream(yazilanDosya); int c; while((c=fis.read()) != -1){ fos.write(c); fis.close(); fos.close(); } }catch(Exception e){ System.out.println(e.getMessage()); } } } |
Hiç yorum yok:
Yorum Gönder