Apa itu FileInputStream Dan Cara Menggunakannya

Pada contoh – contoh sebelumnya sebenarnya kita telah menggunakan salah satau fungsi output pada java, yaitu method println() yang ada pada System.out. Di dalam Java semua operasi yang berhubungan dengan input dan output sudah disediakan. Librari yang perlu dipelajari yaitu paket java.io.
Dalam paket java.io terdapat banyak sekali class – class yang berhubungan dengan input dan output. Oleh karena itu kita tidak mungkin akan membahas semua class tersebut satu persatu. Tetapi anda tidak perlu kawatir karena documentasi Java cukup mudah dipelajari dan hampir semua class pada paket java.io cara penggunaannya sederhana.
Membaca Input dari Keyboard
Untuk mendapatkan inputan dari keyboard kita dapat menggunakan beberapa cara. Yang pertama kita bisa memanfaatkan parameter String[] args yang ada pada method main. Perhatikan contoh berikut ini:
public class InputArgs {
 public static void main(String[] args){
  System.out.print("Nama Anda : ");
  for(int x=0;x<args.length;x++){
   System.out.print(args[x]+ " ");
  }
 }
}
Kompile program di atas dan jalankan lewat console/DOS Prompt seperti di bawah ini.
C:\java InputNama Zamzam Badruzaman
Kelemahan pada contoh di atas adalah kita hanya dapat melakukan input pada saat akan menjalankan program, dan pada saat run-time kita tidak dapat melakukan input lagi. Untuk dapat melakukan inputan pada saat run-time, kita dapat menggunakan cara seperti contoh program di bawah ini.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class InputConsole {
public static void main(String[] args) throws IOException{
BufferedReader input = new BufferedReader(new InputStreamReader(System.in));
System.out.print("Nama Anda : ");
String nama = input.readLine();
System.out.print("Pekerjaan Anda : " +nama);
String job = input.readLine();
System.out.println(nama+” adalah ”+job);
}
}
Dengan contoh di atas kita dapat memberikan inputan saat run-time. Jangan lupa untuk mengimport class – class yang kita gunakan.
Membaca Input dari File
Salah satu fungsi yang cukup penting dalam pemograman adalah bagaimana membaca isi dari sebuah file. Untuk membaca isi sebuah file tentunya kita masih akan menggunakan pake java.io dan contoh di berikut ini akan menunjukan betapa mudahnya membaca file dengan Java.
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;

public class InputConsole {
public static void main(String[] args) {
try{
FileInputStream file = new FileInputStream(args[0]);
BufferedReader input = new BufferedReader(new InputStreamReader(file));
System.out.println(input.readLine());
input.close();
file.close();
}catch(IOException e){
System.out.println(e.getMessage());
}
}
}
Kompile program di atas dan jalankan lewat console seperti berikut ini:
C:\java BacaFile data.txt
Menulis Data ke File
Untuk menulis data ke sebuah file tidak jauh berbeda dengan contoh – contoh sebelumnya. Untuk lebih jelasnya perhatikan contoh berikut ini:
import java.io.BufferedWriter;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
public class TulisFile {
public static void main(String[] args) {
try {
      FileOutputStream file = new FileOutputStream("C:/Data.txt");
 BufferedWriter output = new BufferedWriter(new OutputStreamWriter(file));
 String data = "Nama Saya Zamzam badruzaman";
 output.write(data);
 output.close();
 file.close();
 System.out.println("OK");
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch(IOException e){
e.printStackTrace();
}
}
}
Di dalam paket java.io masih terdapat banyak class – class yang berhubungan dengan input dan output yang belum kita bahas. Diharapkan anda melakukan eksplorasi secara individu dengan panduan API yang ada.