Anda di halaman 1dari 8

Lab.

Algoritma Pemrograman

Pertemuan 10
Operasi File

Secara umum streams dalam Java dibagi dalam 2 bagian besar :


 byte streams
 character streams
Byte Streams digunakan untuk operasi I/O yang menggunakan data biner (byte)
Character Stremas digunakan untuk menangani operasi I/O yang menggunakan character.

10.1 Byte Stream


Contoh Byte Stream (Input dari Console):
import java.io.*;
public class DemoStream1
{
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 anda ketik : ");
for (int i=0;i<data.length;i++) {
System.out.print((char)data[i]);
}
}
}
Contoh Stream (Output ke Console):
import java.io.*;
public class DemoStream3
{
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);

Aditiya Hermawan, M.Kom


Lab. Algoritma Pemrograman

System.out.println("Panjang Karakter : "+panjang);


System.out.print("index ke-1 sebnyk 3 : ");
System.out.write(data,1,3);
} catch (IOException e) {
System.out.print("Terjadi Exception");
}
}
}
10.1.1 Membaca File dengan Byte
Untuk membaca dari file dengan menggunakan byte stream, dapat digunakan class
FileInputStream.
Contoh : (buat file test.txt dan isi dengan text pada folder Project)
import java.io.*;
public class DemoStream4 {
public static void main(String[] args) {
byte data;
String namaFile = "test.txt";
FileInputStream fin = null;
try{
fin = new FileInputStream(namaFile);
data = (byte)fin.read();
while (data!=-1) {
System.out.print((char)data);
data = (byte)fin.read();
}
}
catch (FileNotFoundException e) {
System.out.println("File "+namaFile+" tidak ditemukan");
}
catch (IOException e) {
System.out.println("Terjadi Exception");
} finally {
if (fin != null) {
try {
fin.close();
} catch (IOException e) {
System.out.println("Terjadi Exception");
}
}
}
}
}

Aditiya Hermawan, M.Kom


Lab. Algoritma Pemrograman

10.1.2 Menulis Output ke File


Untuk menulis ke file dengan menggunakan byte stream,dapat digunakan class
FileOutputStream.
Contoh : (buat file test.txt pada folder Project)
import java.io.*;
public class DemoStream5 {
public static void main(String[] args) {
byte data;
String namaFile = "test.txt";
FileOutputStream fout = null;
try {
fout = new FileOutputStream(namaFile);
System.out.println("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 dicreate");
} catch (IOException e) {
System.out.println("Terjadi Exception");
} finally {
if (fout != null) {
try {
fout.close();
} catch (IOException e) {
System.out.println("Terjadi Exception");
}
}
}

}
}

10.2 Character Stream


Untuk membaca Character Strean di gunakan class BufferedReader.
Contoh Character Stream (Input dari Console):
import java.io.*;
public class DemoStream6 {
public static void main(String[] args) throws IOException {
char data;

Aditiya Hermawan, M.Kom


Lab. Algoritma Pemrograman

String str="";
BufferedReader buff =
new BufferedReader(new InputStreamReader(System.in));
System.out.println("Ketik : ");
data = (char) buff.read();
while (data!='\r') {
str+=data;
data = (char) buff.read();
}
System.out.println("Yang diketik : "+str);
System.out.println("Program Selesai");
}
}

Contoh:
import java.io.*;
public class DemoStream7 {
public static void main(String[] args) throws IOException {
String str;
String hasil="";
BufferedReader buff =
new BufferedReader(new InputStreamReader(System.in));
System.out.println("Ketik (akhiri dengan EXIT) : ");
str = buff.readLine();
while (!str.equals("EXIT")) {
hasil+=str+'\n';
str = buff.readLine();
}
System.out.println("Yang diketik : "+hasil);
System.out.println("Program Selesai");
}
}

Contoh Stream (Output ke Console):


import java.io.*;
public class DemoStream8 {
public static void main(String[] args) throws IOException {
PrintWriter output = new PrintWriter (System.out,true);
output.println("Hello World");
}
}

Aditiya Hermawan, M.Kom


Lab. Algoritma Pemrograman

10.2.1 Membaca File dengan Byte


Untuk membaca input dari File dengan character streams, gunakan :
FileReader (String fileName)
throws FileNotFoundException

Contoh : (buat file test.txt dan isi dengan text pada folder Project)
import java.io.*;
public class DemoStream9 {
public static void main(String[] args) throws IOException {
String data;
String namaFile = "test.txt";
FileReader fin = null;
try {
fin = new FileReader(namaFile);
BufferedReader buff = new BufferedReader(fin);
data = buff.readLine();
while (data != null) {
System.out.print(data);
data = buff.readLine();
}
} catch (FileNotFoundException e) {
System.out.println("File " + namaFile + " tidak ditemukan");
} catch (IOException e) {
System.out.println("Terjadi Exception");
} finally {
if (fin != null) {
try {
fin.close();
} catch (IOException e) {
System.out.println("Terjadi Exception");
}
}
}
}
}

10.2.2 Menulis Output ke File menggunakan Character Streams


Untuk menulis ke file dengan menggunakan character stream,dapat digunakan class
FileWriter.
Contoh :
import java.io.*;
public class DemoStream10 {
public static void main(String[] args) {

Aditiya Hermawan, M.Kom


Lab. Algoritma Pemrograman

String data;
String namaFile = "test.txt";
FileWriter fout = null;
BufferedReader buff
= new BufferedReader(new InputStreamReader(System.in));
try {
fout = new FileWriter(namaFile);
System.out.println("Ketik : ");
data = buff.readLine();
while (!data.equals("EXIT")) {
fout.write(data + "\r\n");
data = buff.readLine();
}
} catch (FileNotFoundException e) {
System.out.println("File " + namaFile + " tidak dapat dicreate");
} catch (IOException e) {
System.out.println("Terjadi Exception");
} finally {
if (fout != null) {
try {
fout.close();
} catch (IOException e) {
System.out.println("Terjadi Exception");
}
}
}
}
}

10.3 Latihan
1. Buatlah Output ke dalam file (DaftarNilai.txt) dengan tampilan seperti berikut
menggunakan Charater Stream.

Aditiya Hermawan, M.Kom


Lab. Algoritma Pemrograman

2. Buatlah Program Berikut ini dan tampilkan hasilnya ke dalam File (DaftarTransaksi.txt)
Sebuah Perusahaan ayam goreng dengan nama “GEROBAK FRIED CHIKEN” yang
telah lumayan banyak pelanggannya, ingin dibantu dibuatkan program untuk membantu
kelancaran usahanya.

“GEROBAK FRIED CHIKEN” mempunyai daftar harga ayam sebagai berikut :

Buatlah programnya dengan ketentuan :


 Setiap pembeli dikenakan pajak sebesar 10% dari pembayaran.
 Banyak jenis, jenis Potong dan Banyak Beli diinput.
 Tampilan yang diinginkan sebagai berikut :

Aditiya Hermawan, M.Kom


Lab. Algoritma Pemrograman

Aditiya Hermawan, M.Kom

Anda mungkin juga menyukai