Monday, June 11, 2012

Stream - Operasi File

Dengan operasi file di NetBeans Pemograman Java, data yang digunakan dalam aplikasi bisa disimpan secara permanen di hard disk. Sehingga data tidak akan hilang ketika aplikasi di-close atau komputer dimatikan. Operasi file juga memungkinkan penyimpanan data dengan ukuran yang lebih besar (kapasitas hard disk > dari RAM).


Untuk mengoperasikan file digunakan library java.io.File, java.io.FileNotFoundException, java.io.PrintStream dan java.util.Scanner. Library PrintStream dipakai untuk merekam data ke file. Sedangkan library yang dipakai untuk membaca file adalah java.io.File dan java.util.Scanner.  

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 exists()
- public boolean isFile()
- public boolean isDirectory()
- public long lastModified()
- public long length()
- public boolean mkdir()
- public boolean mkdirs()
- public boolean canRead()
- public boolean canWrite()
- public boolean createNewFile()
- public boolean delete()
- public boolean renameTo(File newfilename)

 Contoh Teknik Operasi File

Berikut ini adalah macam-macam teknik operasi file pada Java antara lain :


1. Membuat Objek File

Untuk membuat object File, kita cukup memanggil salah satu constructor-nya.
Contoh:
String path = "c:\\logs\\hits.log";
File f = newFile(path);
if(!f.exists())
System.out.println("The input file does not exist!");

2. Menampilkan Isi Direktori

      Kode berikut ini menampilkan nama-nama file yang ada dalam suatu direktori:
File dir = newFile(path);
if(dir.isDirectory()) {
File[] files = dir.listFiles();7-6
for(File f : files)
System.out.println(f.getName());
}

3. Menampilkan hanya file saja, tidak menampilkan subdirektori  maupun hidden
files.

File dir = new File(path);
if (dir.isDirectory()) {
File[] files = dir.listFiles();
for (File f : files) {
if (f.isFile() && !f.isHidden())
System.out.println(f.getName());
}
}

4. Merename File
Kode berikut mengubah nama sebuah file dari: hits.logmenjadi savedhits.log:
File f = newFile("hits.log");
if (f.renameTo(newFile("savedhits.log")))
System.out.println("File renamed.");
else
System.out.println("File not renamed.");

5. Menghapus File
Kode berikut digunakan untuk menghapus file :
File f = newFile("hits.log");
if (f.delete())
System.out.println("File deleted.");
else
System.out.println("File not deleted.");
Untuk menghapus sebuah folder termasuk file dan subdirektori di dalamnya,
kita cukup memanggil method tersebut:
deleteFile(newFile("nama_folder_yg_dihapus");


Contoh membuat objek BufferedReader untuk membaca file “movie.txt”:

File f = newFile("movies.txt");
BufferedReader in = newBufferedReader(new FileReader(f));
Read & ReadLine
Kita dapat menggunakan methods “read” dan “readLine” untuk membaca isi objek
BufferedReader.
int read()
- Membaca satu karakter dari file dan me-return suatu angka.
- Menghasilkan -1 apabila end-of-file telah dicapai.
- Throws IOException
String readLine()
- Membaca satu baris dan me-return-nya sebagai String.
- Me-return nullapabila end-of-file telah dicapai.
- Throws IOException
Menuliskan String ke File Teks
FileWriter
FileWriter merupakan subclass dari OutputStreamWriter dimana class
OutputStreamWriter adalah subclass dari class abstrak Writer.
Class Writer memiliki Konstruktor yang umum seperti berikut :7-8
• FileWriter(File objekfile);
• FilWriter(String pathkefile);
• FileWriter(String pathkefile, Boolean append);
Contoh penggunaan :
File inifile = (pathdirektori, namafile);
FileWriter outputnya = new FileWriter(inifile);
PrintWriter
PrintWriter merupakan subclass dari class abstrak Writer yang digunakan
melakukan output dari berbagai macam tipe data yang kemudian dikonversi ke bentuk
karakter. Penggunaan PrintWriter dengan FileWriter :
PrintWriter fileoutput = new PrintWriter (
New FileWriter(File objekfile);
);

Pada Java,  operasi file  dilakukan dengan
menggunakan class File yang  terdapat pada
package java.io

Operasi file seperti membuat, menghapus, mengedit, memidahkan file/folder.
di java banyak class2 yg berhubungan dengan operasi file ini. ex: java.io.File
CMIIW.

Untuk mencegah berbagai masalah yang mungkin muncul karena beragam sistem ini, Java memiliki kelas bernama java.io.File. Objek bertipe kelas ini melambangkan suatu file. Lebih tepatnya, objek bertipe File melambangkan nama file, bukan file itu sendiri. Nama yang ditunjuk belum tentu ada. Direktori juga dianggap Java sebagai File, sehingga File juga melambangkan nama direktori sekaligus nama file.
Objek File memiliki konstruktor new File(String) yang akan membuat objek File dari namanya. Nama tersebut bisa nama sederhana, nama path relatif, atau nama path absolut. Misalnya new File("data.dat") membuat objek File dari file bernama data.dat di direktori aktif.
Konstruktor lain memiliki konstruktor new File(File,String), di mana parameter pertama adalah direktori di mana file tersebut berada, dan parameter kedua adalah nama filenya.
Objek File memiliki beberapa metode instansi. Misalnya file adalah variabel bertipe File, berikut ini adalah beberapa metodenya :
file.exists() -- mengembalikan nilai boolean, yang jika true maka file tersebut ada. Kita bisa menggunakan perintah ini misalnya untuk mencegah menulis file yang sama ketika kita membuka objek FileWriter baru.
file.isDirectory() -- mengembalikan nilai boolean yang mengembalikan true jika objek File adalah suatu direktori, dan false jika File adalah file biasa, atau tidak ada file dengan nama tersebut.
file.delete() -- menghapus file jika ada
file.list() -- jika objek File adalah suatu direktori, maka fungsi ini mengembalikan array bertipe String[] yang berisi nama-nama file pada direktori tersebut. Jika tidak, maka kembaliannya adalah null.
http://java.lyracc.com/belajar/java-untuk-pemula/nama-file-direktori-dan-kelas-file

Kelas dasar I/O Reader, Writer, InputStream dan OutputStream hanya menyediakan operasi I/O sangat dasar. Misalnya, kelas InputStream memiliki metode instansi
public int read() throws IOException
untuk membaca satu byte data dari aliran input. Jika sampai pada akhir dari aliran input , metode read() akan mengembalikan nilai -1. Jika ada kesalahan yang terjadi pada saat pengambilan input, maka pengecualian IOException akan dilemparkan. KarenaIOException adalah kelas pengecualian yang harus ditangani, artinya kita harus menggunakan metode read() di dalam penyataan try atau mengeset subrutin untuk throws IOException. (Lihat kembali pembahasan tentang pengecualian di bab sebelumnya)
Kelas InputStream juga memiliki metode untuk membaca beberapa byte data dalam satu langkah ke dalam array byte. Akan tetapi InputStream tidak memiliki metode untuk membaca jenis data lain, seperti int atau double dari aliran. Ini bukan masalah karena dalam prakteknya kita tidak akan menggunakan objek bertipe InputStream secara langsung. Yang akan kita gunakan adalah kelas turunan dari InputStream yang memiliki beberapa metode input yang lebih beragam daripada InputStream itu sendiri.


Operasi File

File adalah sekumpulan data yang disimpan dalam media penyimpanan luar seperti harddisk.
Contoh program operasi file :

1. Program membuat direktori file

                Untuk membuat sebuah direktori baru, gunakan method mkdirs( ) yang terdapat pada kelas file. Berikut ini, contoh program yang akan menunjukan hal tersebut :
import java.io.File;
class DemoMembuatDirektori
{      
  public static void main(String[] args)
 {
    File f = new File("d:/NewDir/NewSubDir");
    f.mkdirs();    
  }  
}

2.    Program membuat file baru
                Selain menggunakan kelas FileOutputStream maupun FileWriter, kita juga dapat mengunakan method createNewFile( ) dari kelas file untuk membuat sebuah file baru di dalam disk.
                Contoh :
import java.io.File;
import java.io.IOException;
class DemoMembuatFileBaru
                {  
 public static void main(String[] args) throws IOException
                 {
  File f = new File("d:/sample.txt");
  f.createNewFile();
 }
}

     3.  Program rename file
                Apabila kita ingin merubah nama suatu file yang sebelumnya sudah ada di dalamdisk, maka kita harus mengunakan menthod renameto( ) yang terdapat dalam kelas file. Berikut ini contoh kode program yang akan menunjukan hal tersebut :
             
import java.io.File;
class DemoUbahNamaFile
                {  
  public static void main(String[] args)
                  {
   File f = new File("d:/sample.txt");
   f.renameTo(new File("d:/contoh.txt"));
  }
}

     4.  Program delete file
            Untuk menghapus file, kita dapat mengunakan menthod delete( ) yang terdapat pada kelas file. Method ini mengembalikan nilai bertipe boolean (true) bila proses penghapusan danfalse apabila proses gagal. Berikut ini contoh penggunaan menthod tersebut di dalam program :
             
import java.io.File;
class DemoHapusFile
                {  
  public static void main(String[] args)
                  {
   File f = new File("d:/contoh.txt");
   f.delete();
  }
}
http://triyatnoize.blogspot.com/2012/01/operasi-file-pada-java.html

No comments:

Post a Comment