Belajar Pemrograman Java Dari Dasar

Class File Pada Pemrograman Java

Setelah mengetahui mengenai exception handling maka selanjutnya anda bisa menuju ke bagian pemrosesan file. Class File pada Java memiliki method untuk memperoleh properti dari file ataupun directory dan juga untuk mengganti nama dari file tersebut.

Data yang disimpan dalam program hanyalah bersifat sementara dan data-data tersebut bisa saja hilang ketika program berhenti. Oleh karena itu, untuk membuat data itu tersimpan secara permanen maka anda perlu menyimpannya dalam file ataupun disk atau bisa juga disimpan di perangkat lainnya.

File dapat dikirimkan dan selanjutnya dapat dibaca oleh program. Dikarenakan data disimpan dalam bentuk file, maka kali ini akan di bahas mengenai penggunaan class File untuk memperoleh properti,  mengganti nama, dan membuat file/direktori.

Setiap file disimpan dalam sebuah direktori dari sistem. Nama "absolut" dari suatu file mencakup path dan nama file itu sendiri.

Misalnya c:\data\HelloWorld.java adalah nama absolut dari file HelloWorld.java pada sistem operasi Windows. Di mana c:\data direferensikan sebagai direktori path dari file itu sendiri. Nama file absolut ini bisa saja berbeda-beda untuk berbagai sistem operasi.

Selain itu, dikenal juga nama file "relatif" yang berhubungan dengan direktori path di mana file itu disimpan. Pada nama file relatif ini, nama lengkap dari file akan di abaikan. Sebagai contoh, HelloWorld.java merupakan nama file relatif. Jika tempat direktori file itu disimpan adalah c:\data, maka nama file absolutnya akan menjadi c:\data\HelloWorld.java.


Class File hadir pada Java untuk menyediakan abstraksi yang berhubungan dengan kerumitan mengenai nama file-file dan path dalam berbagai jenis  mesin atau sistem operasi. Method-method pada class File ini bisa mendapatkan properti dari file dan direktori atau juga bisa menghapusnya.

Namun, class File ini tidak memiliki method yang bisa membaca dan menulis konten dari file. 

Nama file adalah tipe string. Class File itu sendiri merupakan class wrapper untuk nama file dan juga path direktori. Untuk lebih memahaminya, misalnya new File("c:\\data") akan membuat objek file untuk direktori c:\data. Sedangkan  new File("c:\\data\\mydata.ext") akan membuat objek file untuk file c:\data\mydata.ext, keduanya dalam Windows.



Method Pada Class File


Method isDirectory() dan isFile() dapat digunakan untuk mengetahui apakah objek merepresentasikan sebuah direktori atau sebuah file. Untuk mengetahui lebih jelas mengenai method-method lainnya anda bisa melihat mengenai class File tersebut.

Windows menggunakan tanda pemisah berupa tanda backslash \. Pada Java, tanda tersebut merupakan sebuah karakter yang spesial. Oleh karena itu, dalam penulisan sebagai literal string maka harus ditulis \\.

Jangan menggunakan nama file absolut dalam program anda. Jika anda menggunakan nama program seperti c:\data\HelloWorld.java maka ini hanya akan bekerja pada platform Windows saja, namun tidak akan bekerja pada platform lainnya. Anda harus menggunakan nama file relatif pada direktori yang digunakan.

Sebagai contoh, anda dapat membuat object File menggunakan new File("HelloWorld.java") untuk file HelloWorld.java pada direktori yang digunakan. Anda juga dapat membuat objek File menggunakan new File("data/mydata.ext") untuk file mydata.ext di dalam direktori data. Tanda / atau disebut juga dengan forward slash merupakan pemisah direktori pada Java, dan ini juga berlaku pada UNIX. Maka pernyataan new File ( "c:/data/HelloWorld.java") akan bekerja pada Java, UNIX, dan juga platform yang lainnya.

Membuat instance dari File bukan berarti anda membuat file tersebut. Anda dapat membuat instance File untuk nama apa saja terlepas dari file tersebut ada atau tidak. Anda juga bisa menggunakan method exist() dari instance tersebut untuk mengetahui apakah file tersebut ada atau tidak.

Berikut ini adalah contoh penggunaan class File untuk mendapatkan properti dari file yang berada pada direktori tertentu.

package com.bahasajava.exceptionhandling;

import java.io.File;
import java.util.Date;

public class MencobaClassFile {
 
 public static void main(String[] args) {
  
  long milidetik;
  
  File file = new File("D:/Belajar Java/2d graphics.pdf");
  
  //Menguji apakah aplikasi dapat membaca file yang ditandai oleh pathname abstrak ini
  System.out.println("Apakah file tersebut ada? " + file.exists());
  
  //Mengetahui ukuran file
  System.out.println("File tersebut memiliki ukuran " + file.length() + " bytes");
  
  //Menguji apakah aplikasi dapat membaca file yang ditandai oleh pathname abstrak ini.
  System.out.println("Apakah bisa di baca? " + file.canRead());
  
  //Menguji apakah aplikasi dapat memodifikasi file yang ditandai dengan pathname abstrak ini
  System.out.println("Apakah bisa di modifikasi? " + file.canWrite());
  
  //Mengetahui apakah ini sebuah direktori?
  System.out.println("Apakah ini adalah sebuah direktori? " + file.isDirectory());
  
  //Mengetahui apakah ini sebuah file?
  System.out.println("Apakah ini sebuah file? " + file.isFile());
  
  //Menguji apakah pathname abstrak ini adalah mutlak.
  System.out.println("Apakah ini absolut? " + file.isAbsolute());
  
  //Menguji apakah file yang dinamai oleh pathname abstrak ini adalah file tersembunyi.
  System.out.println("Apakah file ini tersembunyi? " + file.isHidden());
  
  //Mengetahui path absolut
  System.out.println("Path absolut adalah: " +
    file.getAbsolutePath());
  
  
  //Mengetahui waktu terakhir kali file dimodifikasi
  milidetik = file.lastModified();
  Date tanggal = new Date(milidetik);
  System.out.println("Di modifikasi terakhir kali pada: " + tanggal); 
  
 } 

}

class file java


Output:

Apakah file tersebut ada? true

File tersebut memiliki ukuran 5086962 bytes

Apakah bisa di baca? true

Apakah bisa di modifikasi? true

Apakah ini adalah sebuah direktori? false

Apakah ini sebuah file? true

Apakah ini absolut? true

Apakah file ini tersembunyi? false

Path absolut adalah: D:\Belajar Java\2d graphics.pdf

Di modifikasi terakhir kali pada: Thu Mar 08 21:18:33 SGT 2018

Share on Facebook
Share on Twitter
Share on Google+

Tempat berbagi pengetahuan untuk bahasa pemrograman Java

Related : Class File Pada Pemrograman Java