Anda di halaman 1dari 8

LAPORAN PRAKTIKUM

PENGENALAN JAVA
MODUL VI
KONSEP DASAR PBO LANJUT
“I/O dan Operasi File”

NAMA : EKA PUTRI MAHARANI


KELAS : S1-SI-04-C
NIM : 20103109

PROGRAM STUDI S1 SISTEM INFORMASI


FAKULTAS INFORMATIKA
INSTITUT TEKNOLOGI TELKOM
PURWOKERTO
2021
DASAR TEORI
A. I/O (Input dan Output)

Stream adalah aliran proses informasi data yang direpresentasikan secara abstrak
untuk untuk menulis/menghasilkan/output dan membaca/mendapatkan suatu
informasi / input. Semua streams punya sifat yang sama meskipun peralatan fisik
yang berhubungan dengannya beda-beda (misal: keyboard, jaringan, dll.).

Paket yang menangani pembacaan dan penulisan info untuk pemrograman java Î java
io. Ada 2 tipe, Byte Stream dan Character Stream.

1. Byte Stream
Byte Streams digunakan untuk operasi I/O yang menggunakan data biner (byte).
Pada java byte stream mempunyai 2 buah superclass yaitu InputStream dan
OutputStream yang merupakan class abstract.

2. Character Stream
Digunakan untuk menangani operasi I/O yang menggunakan character dan
merupakan sebuah objek yang dapat membaca dan menuliskan byte stream. Jadi,
character stream itu adalah sebuah byte stream yang diteruskan oleh class Reader
dan Writer yang merupakan Abstract class.

B. Operasi File

File digunakan sebagai media penyimpan. Untuk mengakses file kita harus
menspesifikasikan dimana file yang akan kita akses, atau file baru yang akan
disimpan.

Dalam java kita dapat melakukan operasi file, yaitu membuat file baru atau menulis
dan membaca file dengan character stream atau dengan byte stream. Untuk
menciptakan sebuah file dengan mengakses class java.io.File dan menciptakan objek
dari class tersebut, ini tanpa harus menangkap error io. Berbeda dengan menciptakan
file yang langsung diakses oleh stream, file tersebut harus dapat menangkap error io
ketika penciptaan objek class file.

• java.io.File

Terdapat 4 atribut, 4 konstruktor dan 39 method yang ada didalam class untuk
menspesifikasikan file yang dibuat.

File(), File(String path), File(String dir,String nm) → Konstruktor ini adalah


yang sering digunakan yaitu membuat objek file kemudian digunakan dengan
pengesetan methodnya, atau menginstan langsung dengan nama file beserta
pathnya.

boolean createNewFile(), boolean delete(), boolean exists() method-method


ini untuk mengeset dengan pengecekan, untuk createNewFile digunakan untuk
menciptakan file kemudian mengembalikan nilai true jika file dibuat.
• java.io.FileInputStream → dengan byte stream

Terdapat 3 konstruktor dan 9 method yang ada. Digunakan untuk mengambil


file yang telah dideskripsikan untuk dibaca dengan byte stream.

FileInputStream(File of), FileInputStream(String nama) → Digunakan untuk


mengambil file untuk dibaca secara byte stream,bisa memasukan deskripsi file
yang telah ada dengan String, atau dengan file yang telah diinstan dengan
jelas.

• java.io.FileWriter → dengan character stream

Terdapat 5 konstruktor dan tidak ada method yang dideskripsikan didalam


class ini. FileWriter(File of), FileWriter(File of, boolean append) →
Digunakan untuk penciptaan objek file yang akan diakses dengan character
stream, dan untuk variable append digunakan untuk apakah isi file akan
dilanjutkan ke akhir dari isi file.

• java.io.FileOutputStream → dengan byte stream

Terdapat 5 konstruktor dan 7 method untuk membuat file yang akan diakses
menggunakan byte stream.

FileOutputStream(File of), FileOutputStream(File of, boolean append) →


Digunakan untuk penciptaan objek file yang akan diakses dengan byte stream,
dan untuk variabel append digunakan untuk apakah isi file akan dilanjutkan ke
akhir dari isi file.

• java.io.FileReader → dengan character stream

Terdapat 3 konstruktor dan tidak ada method yang dideskripsikan didalam


class ini.

FileReader(File of), FileReader(String nama) → Digunakan untuk mengambil


file untuk dibaca secara character stream,bisa memasukan deskripsi file yang
telah ada dengan String, atau dengan file yang telah diinstan dengan jelas.
GUIDED
A. Latihan 1

package Latihan1;

import java.io.IOException;

public class DemoStream {


public static void main(String[] args) {
byte[] data = new byte[10];
System.out.print("Masukkan data : ");
try {
System.in.read(data);
} catch (IOException e) {
System.out.print("Terjadi Exception");
}
System.out.print("Yang telah anda ketik : ");
for (int i=0;i<data.length;i++) {
System.out.print((char)data[i]);
}
}
}

B. Latihan 2

package Latihan2;

import java.io.*;

public class DemoStream {


public static void main(String[] args) {
byte[] data = new byte[10];
int panjang = 0;
System.out.print("Masukkan data : ");
try {
panjang = System.in.read(data);
System.out.print("Yang anda ketik : ");
System.out.write(data);
System.out.println("");
System.out.println("Panjang Karakter : "+ panjang);
System.out.print("index ke-1 sebanyak 3 : ");
System.out.write(data,1,3);
}catch (IOException e) {
System.out.print("Terjadi Exception");
}
}
}

C. Latihan 3

package Latihan3;

import java.io.*;

public class DemoStream {


public static void main(String[] args) {
byte data;
String namaFile = "MySecretFile.txt";
FileOutputStream fout = null;
try {
fout = new FileOutputStream(namaFile, true);
System.out.print("Ketik : ");
data = (byte)System.in.read();
while (data!=(byte)'\r') {
fout.write(data);
data = (byte)System.in.read();
}
} catch (FileNotFoundException e) {
System.out.println("File "+namaFile+" tidak dapat dibuat");
} catch (IOException e) {
System.out.println("Terjadi Exception");
} finally {
if (fout!=null) {
try {
fout.close();
} catch (IOException e) {
System.out.println("Terjadi Exception");
}
}
}
}
}
UNGUIDED

Buatlah contoh program yang menangani pembacaan dan penulisan (I/O) yang
menggunakan character (based on character stream)

a. Input Character Stream

package Unguided;

import java.io.IOException;

public class Input {


public static void main(String[] args) throws IOException {
byte[]data = new byte[10];
System.out.print("Masukan data : ");
System.in.read(data);
System.out.println("Karakter yang anda ketik : ");
for (int i = 0; i < data.length; i++){
System.out.println((char) data[i]);
}
}
}

b. Output Character Stream

package Unguided;

import java.io.PrintWriter;

public class Output {


public static void main(String[] args) {
PrintWriter output = new PrintWriter(System.out,true);
output.println("Hello, saya Eka Putri Maharani");
output.println("Saya dari kelas Sistem Informasi C");
output.println("Salam kenal semuanyaaaaaa :)");
}
}

Anda mungkin juga menyukai