Anda di halaman 1dari 4

Operasi File dan Input Output (IO)

Data dan program pada memori komputer hanya dapat bertahan selama komputer
tersebut
dinyalakan atau sedang digunakan, untuk menyimpan data yang dengan waktu yang lama
computer menggunakan file. File yaitu kumpulan data yang disimpan dalam hard disk, disket
atau CD-ROM, USB, dan lainnya. File tersebut akan tersusun dalam direktori yang sering
disebut dengan folder. Suatu direktori dapat terdiri dari beberapa direktori atau file lain. Nama
direktori dan file digunakan untuk mencari suatu file dalam komputer.

Data yang telah tersimpan pada direktori atau tempat penyimpanan yang dapat diolah
oleh pengguna sesuai dengan kebutuhan. Suatu program dibutuhkan agar dapat membantu
pengguna untuk membaca data dari file yang sudah ada. Dengan suatu program tertentu,
kamu dapat membuat file baru atau menulis data ke dalam file yang sudah ada. Dalam Java,
input dan output seperti ini dapat menggunakan aliran atau stream. Data dapat ditulis dan
dibaca oleh pengguna menggunakan File Writer.

Pada bab kali ini kamu akan mempelajari cara mengoperasikan file pada Java yaitu
membuat file, Menulis file, membaca file dan lain sebagainya. Untuk membaca atau
menyimpan suatu file dalam format mesin, kelas 1/O-nya adalah File Input Stream dan File
Output Stream. Untuk lebih jelasnya, kamu harus mempelajari bab ini dengan penuh
semangat!

A. Konsep Operasi File pada Java

Seorang user akan melakukan penambahan data ke dalam suatu sistem, sehingga dalam
pembuatan suatu program diperlukan tempat untuk menyimpan data. Data tersebut disimpan
ke dalam database sistem dan akan ditampilkan oleh sistem sebagai informasi. Ketika sebuah
program melakukan pengolahan terhadap data-data penting, maka hasil data yang telah diolah
tersebut harus disimpan pada sebuah file. Hal ini berbeda dengan cara penyimpanan yang
bersifat sementara. Penyimpanan data dengan file akan bersifat permanen yang berarti bahwa
data tersebut tidak akan hilang apabila program ditutup atau komputer di-restart.
Pada Java tersedia fitur untuk membaca atau menyimpan suatu file dalam format mesin,
yaitu FileInputStream dan FileOutputStream. Semua kelas ini didefinisikan dalam paket java.io.
Kelas file mempresentasikan suatu file ataupun direktori dalam sistem file melalui pathname.
Field, constructor dan method kelas file dapat dilihat pada dokumen Java API pada bagian
java.io.File.
Kelas FileInputStream dan FileOutputStream memungkinkan operasi file stream based.
Kedua kelas ini bekerja sama dengan class File dan FileDescriptor. Class File merupakan
representasi dari file dan direktori (path). Berikut ini merupakan syntax dasar dari class file.

File (String pathname)


File (String parent, String child)
File (File parent, String child)
File (URI uri)
Perhatikan kode program di atas kembali. Bentuk pertama yang ditunjukkan kode
program, yaitu untuk membuat file dalam direktori dan nama tertentu. Bentuk kedua dan
ketiga yaitu membuat file dengan posisi relatif terhadap direktori parent. Direktori relatif parent
dapat berupa string maupun direktori dari sebuah file. Child menyatakan sub-direktori atau
nama file yang terletak relatif terhadap parent.
FileDescriptor merupakan sebuah kelas yang tidak dapat dibuat objeknya. Komponen ini
digunakan untuk menujukkan descriptor dari file yang aktif. File ini memuat data spesifik
mesin, sehingga ia bersifat opaque dan strukturnya tidak terlihat. Sedangkan FileInputStream
adalah kelas yang digunakan untuk membaca file sebagai input dalam bentuk stream. Berikut
ini merupakan syntax dasarnya.

FileInputStream (Filefile) throws


FileNotFoundExcrption
FileInputStream (FileDescriptor fdbj)

Kode program di atas akan menjalankan tugas membuka file untuk dibaca oleh
pengguna. Sebagai turunan dari Inputstream, maka kelas ini menurunkan beberapa metode
dari induknya, seperti read(),skip(), dan close(). Sebagai tambahan, kelas ini memiliki
metode getFD yang digunakan untuk mengambil objectFileDescriptor.

FileOutputStream merupakan class yang memungkinkan file ditulisi sebagai output


dalam bentuk stream. Berikut ini merupakan syntax dasar.

FileInputStream(Filefile) throws
FileNotFoundExcrption
FileInputStream (FileDescriptor fdbj)

Syntax di atas digunakan saat file akan dibuka untuk ditulisi. Jika append sama dengan
true maka data akan ditambahkan pada akhir file. Sementara itu, sebagai turunan dari
Outputstream maka kelas ini akan menurunkan beberapa metode dari kelas parent-nya,
seperti write() dan close(). Sebagai tambahan, kelas ini memiliki metode get FDO yang dipakai
untuk mengambil objectFileDescriptor.

B. Membedakan input dan Output Pada Java

Suatu program komputer dapat berguna jika sistem yang ada di dalam komputer dapat
melakukan interaksi dengan pengguna. Interaksi yang dimaksudkan dalam proses ini adalah
input atau output(1/0). Pada subbab ini, kamu akan mempelajari bagaimana input output pada
file dan koneksi jaringan atau network.

Pada Java, V/O dan jaringan dilakukan berdasarkan aliran (stream), di mana semua
objek dapat melakukan perintah I/O yang sama. Standar output (system.out) dan standar
input (system.in) adalah contoh aliran. Banyaknya subrutin yang digunakan untuk bekerja
dengan 1/0, karena subrutin akan dipanggil di dalam pernyataan try...catch.
Bahasa pemrograman Java membuat proses 1/0 menjadi lebih sederhana, sebab semua
proses 1/0 hanya memerlukan satu class untuk proses input dan satu class untuk proses
output. Semua class yang digunakan dalam proses 1/0 berada di dalam paket java.io.

Komputer yang dapat terhubung dan melakukan interaksi dengan pengguna dibedakan
menjadi dua kategori yaitu data yang dibuat oleh mesin dan data yang dapat dibaca oleh
manusia. Data yangdibuat dengan mesin ditulis dalam model yang sama dan bagaimana data
tersebut disimpan dalam sistem komputer berupa rangkaian bit, yaitu 0 dan 1. Sedangkan
data yang dapat dibaca oleh manusia adalah data dalam bentuk rangkaian huruf.
Untuk menangani dua jenis data yang berbeda tersebut, Java telah memiliki dua kategori
besar untuk aliran yaitu aliran byte untuk data mesin (byte stream) dan aliran karakter
(character stream) untuk data yang dapat dibaca manusia. Java byte stream digunakan untuk
melakukan input dan output dari 8-bit byte. Meskipun ada banyak kelas yang berhubungan
dengan byte stream tetapi kelas yang paling sering digunakan adalah FileInputStream dan
FileOutputStream.

public static void hapusFile(String namaFolder, String namaFile) {

import java.io.*;

public class CopyFile {

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

FileInputStream in = null;

FileOutputStream out = null;

try {

in = new FileInputStream("input.txt");

out = new FileOutputStream("output.txt");

int c;
while ((c = in.read() != -1) {

out.write(c);

) finally {

if (in != null) {

in.close();

if (out != null) {

out.close();

File file = new File("src/" + nama Folder + "/" + namaFile):

file.delete();

Anda mungkin juga menyukai