Sabtu, 10 Maret 2012

Class File

Class File
       Walaupun class File bukan merupakan class stream, ini sesuatu yag penting bahwa kita
mempelajari ini sejak class-class stream merupakan file-file yang telah dimanipulasi.
Class adalah sebuah perwakilan dari abstraksi dari file-file nyata dan nama path
direktori.

Untuk meng-instantiate sebuah object File, Anda dapat menggunakan constructor
berikut ini:
Sebuah Constructor File

  • File(String pathname)

Instantiate sebuah object File dengan nama path khusus sebagai nama filenya. Nama
filenya mungkin salah satu menjadi penuh( sebagai contoh, isi dengan path yang
lengkap) atau mungkin terdiri atas namafile itu sendiri dan diasumsikan menjadi diisi
dalam direktori tersebut.


Class File menyediakan beberapa method untuk memanipulasi file dan direktori. Berikut
ini beberapa dari method-method tersebut.

Method-method File


  • public String getName()
Mengembalikan nilai nama file atau nama direktori dari object File ini.



  • public boolean exists()
Menguji apakah sebuah file atau sebuah direktori masih ada atau tidak

  • public long length()
Mengembalikan nilai ukuran dari file.

  • public long lastModified()
Mengembalikan nilai tanggal dalam milidetik ketika file terakhir kali dimodifikasi.

  • public boolean canRead()
Mengembalikan nilai true jika dijinkan untuk membaca dari file. Sebaliknya, nilai pengembaliannya
bernilai false.

  • public boolean canWrite()
mengembalikan nilai true jika diijinkan untuk menulis ke sebuah file. Sebaliknya, nilai pengembaliannya bernilai false.

  • public boolean isFile()
Menguji apakah object ini berupa sebuah file, yaitu persepsi normal kita tentang apa itu sebuah file
(bukan sebuah direktori) atau bukan.

  • public boolean isDirectory()
menguji apakah object ini adalah sebuah direktori atau bukan.

  • public String[] list()



  • Mengembalikan nilai daftar file dan subdirektori yang ada dalam object ini. Object ini 
  • haruslah berupa sebuah direktori.

    • public void mkdir()



  • Membuat sebuah direktori yang merupakan abstraksi nama path ini.

    • public void delete()



  • Membuang file atau direktori yang sebenarnya diwakili oleh object File tersebut.


  • Contoh :

    import java.io.*;

    public class FileInfoClass {
         public static void main(String args[]) {
             String fileName = args[0];
             File fn = new File(fileName);
             System.out.println("Name: " + fn.getName());
             if (!fn.exists()) {
                 System.out.println(fileName + " does not exists.");
                 /* membuat sebuah temporary directory . */
                 System.out.println("Creating temp directory...");
                 fileName = "temp";
                 fn = new File(fileName);
                 fn.mkdir();
                 System.out.println(fileName +
                                  (fn.exists()? "exists": "does not exist"));
                 System.out.println("Deleting temp directory...");
                 fn.delete();
                 System.out.println(fileName +
                                  (fn.exists()? "exists": "does not exist"));
                 return;
             }
             System.out.println(fileName + " is a " +
                              (fn.isFile()? "file." :"directory."));
             if (fn.isDirectory()) {
                String content[] = fn.list();
                System.out.println("The content of this directory:");
                for (int i = 0; i < content.length; i++) {
                      System.out.println(content[i]);
                }
              }

               if (!fn.canRead()) {
               System.out.println(fileName + " is not readable.");
               return;
               }
               System.out.println(fileName + " is " + fn.length() + " bytes long.");

               System.out.println(fileName + " is " + fn.lastModified() + " bytes long.");


               if (!fn.canWrite()) {

                  System.out.println(fileName + " is not writable.");
                }
           }
      }






    Tidak ada komentar:

    Posting Komentar