Monday, March 12, 2012 - 0 comments

Konsep Dasar Stream I/O

Streaming I / O merupakan sumber input atau output tujuan. Sebuah stream dapat mewakili berbagai macam sumber dan tujuan, termasuk file disk, perangkat, program lain, dan array memori. Streaming mendukung banyak jenis data, termasuk byte sederhana, tipe data primitif, karakter lokal, dan objek. Beberapa aliran sekedar menyampaikan data, orang lain memanipulasi dan mengubah data dengan cara yang bermanfaat. 



Tidak peduli bagaimana mereka bekerja secara internal, semua aliran menyajikan model sederhana yang sama untuk program yang menggunakannya: Sebuah stream adalah urutan data.




Contoh:
Membaca dan menulis file di dan ke harddisk
Membaca dan menulis teks ke console.
Membaca dan menulis melalui network





Untuk membaca, program membuka stream pada sumber ( file, memory, socket) dan membaca informasi secara sekuensial. 





Untuk menulis, program mengirim informasi ke tujuan dengan cara membuka stream tujuan, selanjutnya menulis informasi secara sekuensial. 




Tipe-Tipe Stream yang Umum Digunakan :


stream karakter dan byte. Kita hanya mengulang perbedaan mendasar antara keduanya. Stream byte adalah abstraksi file atau alat untuk data biner sedangkan stream karakter adalah untuk karakter Unicode.

Class InputStream adalah abstraksi class root untuk semua input stream byte sedangkan class OutputStream adalah class root abstraksi dari semua output stream byte. Untuk stream karakter, superclasss yang sesuai dari semua class-class secara berturut-turut adalah class Reader dan the Writer. Kedua class-class ini adalah abstraksi class-class untuk membaca dan menulis stream karakter. 


Byte Stream:







Character Stream :








Cara menggunaka Stream :




  • Input Stream
  1. Membuat obyek yg berasosiasi dg data source. Misal : FileInputStream
  2. Membaca informasi dari stream dg menggunakan method obyek tsb. Misal : read();
  3. Bila selesai, panggil method close.

  • Output Stream 
  1. Membuat obyek yg berasosiasi dg data destination. Misal : BufferedWriter
  2. Menulis informasi ke stream tujuan dg menggunakan method obyek tsb. Misal : write();
  3. Bila selesai, panggil method close.


Stream juga dikategorikan berdasarkan apakah mereka digunakan untuk membaca atau menulis stream. Berikut ini adalah hirarki dari Class InputStream dan OutputStream (sori pake gambar, lagi males ngetik... hehe... copas dari blog sebelah gambarnya)





Contoh bisa dilihat disini

Sekian, semoga bisa membantu

0 comments:

Post a Comment