-- Java SE

Stream

Stream sınıflar :

  • InputStream
  • FileInputStream
  • OutputStream
  • FileOutputStream
  • BufferedInputStream
  • BufferedOutputStream
  • OutputStreamWriter
  • InputStreamReader

FileInputStream & FileOutputStream

Önceki Writer/Reader sınıfları karakter bazlıydı,Stream sınıfları ise byte bazlıdır.Daha önce String veya char dizisini dosyaya yazmıştık,bu sınıflarla bir byte dizisini yazacağız.

OutputStream ve InputStream abstract sınıflardır,File I/O işlemlerinde FileInputStream ve FileOutputStream sınıfları kullanılır.

FileOutputStream IS-A OutputStream ve FileInputStream IS-A InputStream’dır.

import java.io.*;

public class StreamTest {

    public static void main(String args[]) throws IOException{
        byte[] b = {109,101,114,105,99};
        //meric karakterlerine karşılık unicode değerleri.

        OutputStream os = new FileOutputStream("streamtest.txt");
        os.write(b);
        os.flush();
        os.close();

        InputStream is = new FileInputStream("streamtest.txt");

        for(int i = 0; i < b.length; i++){
            System.out.print((char)is.read());
        }

        is.close();
    }

}

BufferedOutputStream & BufferedInputStream

Buffered sınıflar daha önce olduğu gibi yine tek başına kullanılmazlar.

import java.io.*;

public class StreamTest {

    public static void main(String args[]) throws IOException{

        File file = new File("bufferedstreamtest.txt");
        OutputStream os = new FileOutputStream(file);
        BufferedOutputStream bos = new BufferedOutputStream(os);

//OutputStream os = new FileOutputStream("bufferedstreamtest.txt");
//BufferedOutputStream bos = new BufferedOutputStream(os);


        byte[] b = {109,101,114,105,99};
        //meric karakterlerine  karşılık unicode değerleri.

        bos.write(b);
        bos.flush();
        bos.close();

        InputStream is = new FileInputStream(file);
        BufferedInputStream bis = new BufferedInputStream(is);

//InputStream is = new FileInputStream("bufferedstreamtest.txt");
//BufferedInputStream bis = new BufferedInputStream(is);

        while(is.available()>0){
            System.out.print((char)is.read());
        }

        is.close();

    }

}

OutputStreamWriter & OutputStreamReader

import java.io.*;

public class StreamTest {

    public static void main(String args[]) throws IOException{


      File file = new File("writerstreamtest.txt");
      OutputStream os = new FileOutputStream(file);
      OutputStreamWriter osw = new OutputStreamWriter(os);

      osw.write(109);
      osw.write(101);
      osw.write(114);
      osw.write(105);
      osw.write(99);
      
      //meric karakterlerinin unicode değerleri.

      osw.close();

      InputStream is = new FileInputStream(file);
      InputStreamReader isr = new InputStreamReader(is);

      int i = 0 ;

      while((i = isr.read()) != -1){
            System.out.print((char)i);
      }

    }

}

 

 

Yorum bırak

Yorum