Input/Output dalam Java dipaketkan dalam java.io. Selain kelas-kelas, paket ini juga
mengandung interface yang menangani aliran (stream) data output dan input. Data
tersebut tersimpan dalam file, memori, disk bisa dalam bentuk suara, gambar, maupun
karakter.
Kelas java.io.Output Stream adalah:
public abstract class OutputStream
Sedangkan method-method nya adalah:
public abstract void write(int b) throws IOException
public void write(byte[] data) throws IOException
public void write(byte[] data, int offset, int length)
throws IOException
public void flush( ) throws IOException
public void close( ) throws IOException
public static void generateCharacters(OutputStream out)
throws IOException {
int firstPrintableCharacter = 33;
int numberOfPrintableCharacters = 94;
int numberOfCharactersPerLine = 72;
int start = firstPrintableCharacter;
while (true) { /* infinite loop */
for (int i = start; i < start =" ((start+1)" class="fullpost">
Kelas ini merupakan pengembangan dari kelas Byte Stream sehingga lebih efisien.
Terdiri dari 2 kelas:
Reader
Writer
OutputStream
FileOutputStream
PipedOutputStream FilterOutputStream ObjectOutputStream ByteArrayOutputStream
DataOutputStream BufferedOutputStream PrintStream
Reader
BufferedReader CharArrayReader InputStreamReader
FilterReader
PipedReader
LineNumberReader FileReader
PushbackReader
StringReader
Writer
BufferedWriter CharArrayWriter OutputStreamWriter
FilterWriter
PipedWriter
FileWriter
StringWriter
PrintWriter
Stream Standard
Kelas java.lang berkaitan standar input, output dan error. System.in merupakan objek
dari InputStream dan System.out dan System.err merupakan objek dari PrintStream.
Dalam java cara membaca inputan dari keyboard adalah menggunakan System.in. Agar
mempermudah proses maka obyek System.in dibungkus dengan obyek BufferedReader
dengan cara:
BufferedReader br = new BufferedReader(new
InputStreamReader(System.in));
Kita telah memperoleh obyek untuk menangani aliran karakter (character stream) yang
memiliki method-method seperti misalnya read() untuk membaca inputan karakter. Jika
mencapai end of stream maka akan menghasilkan nilai -1.
Contoh:
import java.io.*
class BacaKarakter(){
public static void main(String[] args){
char c;
try{
BufferedReader br = new BufferedReader(new
InputStreamReader(System.in));
System.out.println(“Masukkan karakter (akhiri dengan
‘q’) : “);
do {
c = (char) br.read();
System.out.println(“Karakter terbaca : “+c);
} while (c != ‘q’);
} catch(IOException e){
System.out.println(“Ada error IO”);
System.exit(0);
}
}
}
Untuk membaca String (menggunakan try … catch … )
import java.io.*
class BacaString(){
public static void main(String[] args){
String str;
try{
BufferedReader br = new BufferedReader(new
InputStreamReader(System.in));
System.out.println(“Masukkan karakter (akhiri dengan
\”end\”) : “);
do {
str = br.readLine();
System.out.println(“Karakter terbaca : “+c);
} while (c != ‘q’);
} catch(IOException e){
System.out.println(“Ada error IO”);
System.exit(0);
}
}
}
Kenapa menggunakan try catch? Karena operasi I/O dalam java harus melemparkan
Exception, yaitu IOException.
Untuk membaca String (menggunakan throws exception)
import java.io.*
class BacaString(){
public static void main(String[] args) throws IOExcpetion{
String str;
BufferedReader br = new BufferedReader(new
InputStreamReader(System.in));
System.out.println(“Masukkan karakter (akhiri dengan
\”end\”) : “);
do {
str = br.readLine();
System.out.println(“Karakter terbaca : “+c);
} while (c != ‘q’);
}
}
Cara menampilkan Output ke Layar
Cara menampilkan Output ke layar adalah dengan menggunakan System.out.print()
atau System.out.println().
Cara membaca String dan kemudian mengkonvertnya ke dalam tipe data numerik lain
Kita tetap menggunakan perintah :
BufferedReader br = new BufferedReader(new
InputStreamReader(System.in));
String str = br.readLine();
int panjang = new Integer.parseInt(str);
int lebar = new Integer(str).intValue();
Untuk menkonvert dari numerik ke String:
int i = 100;
String str = new String.valueOf(i);
Operasi File
Di dalam java operasi file menggunakan kelas java.io.File. Kelas ini memiliki
konstruktor umum yaitu: File(String namafile). Sedangkan method-method umumnya
adalah:
- public boolean canRead()
- public boolean canWrite()
- public boolean createNewFile()
- public boolean delete()
- public boolean exists()
- public boolean isFile()
- public boolean isDirectory()
- public long lastModified()
- public long length()
- public boolean mkdir()
- public boolean mkdirs()
- public boolean renameTo(File newfilename)
Dan masih banyak lagi yang bisa dilihat di javadoc
Contoh program:
import java.io.*;
class cobaFile{
public static void main(String[] args) throws IOException {
if(args.length != 1){
System.out.println("Usage : java cobaFile
System.exit(1);
}
File f = new File(args[0]);
System.out.println("Nama : "+f.getName());
if(f.exists()) System.out.println("File sudah ada!");
else {
System.out.println("File belum ada, buat baru…");
if(f.createNewFile()) System.out.println("Pembuatan
selesai");
else {
System.out.println("Pembuatan gagal!");
System.exit(0);
}
}
System.out.println("File dapat dibaca ? "+f.canRead());
System.out.println("File dapat ditulisi ? "+f.canWrite());
System.out.println("File adalah file ? "+f.isFile());
System.out.println("File adalah direktori ? "+f.isDirectory());
java.util.Date d = new java.util.Date(f.lastModified());
System.out.println("Last modified : "+d.toString());
System.out.println("File size : "+f.length());
}
}
Contoh untuk mengganti nama file (rename file):
import java.io.*;
class cobaFile2{
public static void main(String[] args) {
if(args.length != 2){
System.out.println("Usage : java cobaFile2
System.exit(1);
}
File f = new File(args[0]);
if(f.renameTo(new File(args[1])))
System.out.println(“Success!”);
else System.out.println(“Failed!”);
}
}
Contoh untuk membuat direktori:
import java.io.*;
class cobaFile3{
public static void main(String[] args) {
if(args.length != 1){
System.out.println("Usage : java cobaFile3
System.exit(1);
}
File f = new File(args[0]);
if(f.mkdir()) System.out.println(“Success!”);
else System.out.println(“Failed!”);
}
}
Contoh membaca file:
import java.io.*;
class cobaFile4{
public static void main(String[] args) {
if(args.length != 1){
System.out.println("Usage : java cobaFile4
System.exit(1);
}
try{
FileReader f = new FileReader(args[0]);
BufferedReader r = new BufferedReader(f);
String s = null;
while((s=r.readLine())!=null){
System.out.println(s);
}
r.close();
f.close();
} catch(FileNotFoundException e){
System.out.println(“File not found!”);
System.exit(1);
} catch(IOException e){
System.out.println(“IO Error!”);
System.exit(1);
}
}
}
Contoh menulis ke file:
import java.io.*;
class cobaFile5{
public static void main(String[] args) {
if(args.length != 1){
System.out.println("Usage : java cobaFile5
System.exit(1);
}
try{
FileWriter f = new FileWriter(args[0]);
BufferedWriter r = new BufferedWriter(f);
String s = “percobaan menulis 1 2 3 4 sukses!”;
r.write(s);
r.close();
f.close();
} catch(IOException e){
System.out.println(“IO Error!”);
System.exit(1);
}
}
}
Rabu, 08 Desember 2010
JAVA STREAM & FILE
Label:
PRAKTIKUM DAN TUGAS
Langganan:
Posting Komentar (Atom)
Tidak ada komentar:
Posting Komentar