Modul 1 Prakt ST

Embed Size (px)

Citation preview

  • 7/22/2019 Modul 1 Prakt ST

    1/6

    Pertemuan I

    Stream

    Bahasan : IO Stream

    Sasaran : - Konsep dari stream

    - Char Stream and Byte Stream (basic IO operation)

    Materi :

    1. Program dalam java melakukan operasi I/O dengan menggunakan Streams. Streams sendiri

    adalah adalah abststraksi dari sesuatu yang digunakan untuk menulis atau menghasilkan dan

    membaca atau mendapatkan suatu informasi.

    Secara umum Stream dalam java dibagi dalam dua bagian besar yaitu Byte Stream

    dan Character Stream. Byte Stream sangat cocok untuk digunakan untuk operasi I/O data

    biner (byte). Sedangkan Character Stream digunakan untuk menangani operasi I/O yang

    menggunakan karakter. Dalam beberapa kasus, seperti menangani operasi I/O yang menulis

    dan membaca data yang berupa String, penggunaan character Stream ini lebih effisien.

    Semua kelas dan interface yang berhubungan dengan Stream ada dalam package java.io.*.

    Table I.1 Daftar beberapa class ber-type byte Streams

    class Deskripsi

    BufferedInputStream Byte input Stream yng menggunakan buffer

    BufferedOutputStream Byte output Stream yng menggunakan buffer

    ByteArrayInputStream Byte input stream yang membaca dari array

    bertype byte (InputStream)

    ByteArrayInputStream Byte output stream yang menulis ke array bertype

    byte (OutputStream)

    DataInputStream Byte input stream yang memiliki method untukmembaca input yang bertype data standart Java.

    DataOutputStream Byte output stream yang memiliki method untuk

    menuliskan output yang bertype data standart

    Java.

    FileInputStream Byte input stream yang membaca dari file.

    FileOutputStream Byte output stream yang menuliskan ke file.

    PrintStream Byte output Stream yang menambahkan method

    untuk memudahkan proses menulis ke suatu

    output. Method yang ditambahkan adalah print()

    dan println(). Object yang referensinya dipegang

    olehSytem.outjuga bertipe PrintStream.

  • 7/22/2019 Modul 1 Prakt ST

    2/6

    Tabel I.2 Daftar beberapaclassbertipeCharacter Streams.

    Class Deskripsi

    BufferedReaderInput character stream yang menggunakan

    buffer.

    BufferedWriterOutput character stream yang menggunakan

    buffer.

    CharArrayReaderInput character Stream yang membaca dari

    array bertipeChar.

    CharArrayWriterOutput character Stream yang menulis ke

    array bertipeChar.

    FileReaderInput character stream yang membaca dari

    file.

    FileWriter output character stream yang menulis ke file.

    InputStreamReaderInput stream yang mengkonversi dari byte ke

    char

    OutputStreamWriterOutput stream yang mengkonversi dari char

    ke byte

    PrintWriter

    Output karakter stream yang menambahkan

    method untuk memudahkan proses menulis

    ke suatu output. Method yang di tambahkan

    yaitu print() dan println().

    StringReaderInput character Stream yang membaca dari

    String

    StringWriterOutput character stream yang menulis ke

    String

    2 Byte Stream

    Class yang mengimplentasikan byte Stream merupakan turunan dari

    OutputStream.class dan InputStream.class. Secara umum cara penggunaan class tersebut

    adalah sama. Secara dasar perlu diketahui method yang dideklarasikan oleh superclass

    InputStream dan OutputStream untuk dapat menggunakan class class tersebut. Berikut

    ini dalah daftar method yang dideklarasikan oleh kedua superclass tersebut :

    Table I.3 Daftar method yang didefinisikan oleh class InputStream.

    Method Fungsi

    Int available()Mengembalikan jumlah byteyang dapat

    dibaca / dikembalikan oleh InputStream ini

  • 7/22/2019 Modul 1 Prakt ST

    3/6

    Void close()

    Menutup InputStream dan membebaskan

    semua resource yang berhubungan dengan

    Stream ini.

    Void mark(int

    readLimit)

    Menandai posisi saat ini dalam InputStream

    yang akan tetap valid hingga sebuah

    ReadLimit byte dibaca.

    Boolean

    markSupported()

    Mengembalikan nilai true jika stream ini

    mendukung methodmark()danreset().

    Int read()

    Membaca sejumlah byte berikutnya dari

    InputStream, dan mengembalikan nilainya

    sebagai integer.

    Int read(byte [] b)

    Membaca sejumlah byte dari InputStream

    meletakkannya ke dalam buffer array b dan

    mengemblikan jumlah byte yang berhasil

    dibaca.

    Int read(byte [] b, int

    offset, int length)

    Membaca sejumlah byte dari InputStream

    meletakkannya ke dalam buffer array b mulai

    dari posisi offset (b[off]) dan mengemblikan

    jumlah byte yang berhasil dibaca.

    Void reset()

    Mengembalikan posisi pembacaan stream ke

    posisi dimana terakhir kali method mark()

    dipanggil.

    Long skip()Mengacuhkan / melompati (skip) sejumlah n

    byte dari InputStream.

    Tabel I.4 Daftar method yang didefiniskan oleh class OutputStream.

    Method Fungsi

    Void close()

    Menutup OutputStream dan membebaskan

    semua resource yang behubungan dengan

    stream ini.

    Void flush()Mengosongkan buffer dan menuliskan semua

    output ke tujuannya.

    Void write(byte [] b) Menuliskan isi array ke OutputStream.

    Void write(byte [] b, int

    offset, int length)

    Menuliskan isi array ke OutputStream mulai

    dari posisi offset sebanyak length

    Abstract void write(int

    b)Menuliskan sebuah byte data ke outputStream

  • 7/22/2019 Modul 1 Prakt ST

    4/6

    Contoh Program :

    1. Input karakter

    2. Baca file

    import java.io.*;

    public class inputkarakter {

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

    {

    System.out.println("masukkan sembarang karakter");

    InputStreamReader in = new InputStreamReader(System.in);

    BufferedReader br = new BufferedReader(in);

    char ch = (char)br.read();

    System.out.println("Karakter yang dimasukkan yaitu \'"+ ch +"\'");

    }

    }

    import java.io.*;

    public class bacafile {

    public static void main(String args[])

    { FileInputStream input = null;int data;

    //membuka file

    try{

    input = new FileInputStream("f:/template/bacalah.txt");

    }catch(FileNotFoundException fn) {System.out.println("file gak temu");}

    //membaca data dari dalam file

    try{

    while ((data = input.read()) != 1){

    System.out.print((char) data);

    }System.out.println();

    }catch(IOException in){

    System.out.println(in.getMessage());

    } //menutup file

    try{

    input.close();

    }catch(IOException e){}

    }

  • 7/22/2019 Modul 1 Prakt ST

    5/6

    3. Tulis file

    Tugas di laboratorium :

    1. Buatlah program yang membaca input text dari keyboard dan menyimpannya dalam

    sebuah variable kemudian menampilkan inputan tersebut ke layar. Inputan berupa satu

    kalimat atau paragraph.

    2. Buatlah program yang membaca input angka bulat maupun pecahan kemudian

    menyimpan dalam sebuah variable dan membaca input angka kembali dan

    menyimpannya dalam variable kedua lalu outputkan perkalian ke dua variable tersebut

    ke layar.

    3. buatlah program untuk mengkopi isi sebuah file ke file lain.

    import java.io.*;

    public class tulisfile {

    public static void main(String args[])

    {

    FileOutputStream out = null;

    String data = "ok smangat";

    //buka file

    try{

    out= new FileOutputStream("f:/template/about.txt");

    }catch(FileNotFoundException fn){

    System.out.println("File tidak ditemukan");

    }

    //menulis

    try{

    for(int i=0; i

  • 7/22/2019 Modul 1 Prakt ST

    6/6

    Tugas praktikum :

    1. Buatlah program kalkulator sederhana dengan menggunakan 3 inputan dimana inputan

    pertama dan kedua adalah bilangan dan inputan yang ketiga adalah operasi yang akan

    digunakan yaitu tambah, kurang, kali, dan bagi.

    2. Buatlah program untuk menggabungkan file. Baca sebuah file lalu simpan isi tersebut ke

    variable dan membaca file kedua lalu menyimpannya pada variable kedua kemudian

    menggambungkan kedua filetersebut dalam satufile.

    3. Buatlah program untuk simpan file kedalam direktori d . Sebelum menyimpan program

    secara otomatis akan memeriksa apakah di direktori d terdapat folder dengan nama

    penyimpanan. Apabila belum ada maka program secara otomatis membuat folder

    dengan nama penyimpanan kemudian file yang ada isinya tersebut disimpan

    didalamnya.

    4. Buat program simulasi dari dos prompt dalam windows. Jadi setelah membuat file

    dengan isinya dan disimpan didirektori tertentu. Untuk mengetahui keberadaan file

    ketikkan dir. Maka seluruh folder yang ada di direktori terbesut akan muncul dan

    kelihatan file yang telah kita buat.