Langsung ke konten utama

File dan Directory

File dan Directory


Class File ada di dalam package java.io. Class File merupakan representasi abstrak terhadap file dan directory pathname.
Java versi 7 memperkenalkan package new I/O yaitu java.nio. Beberapa class yang penting yaitu Files dan Path.

Durasi waktu: 60 menit

Resources


Change Log

  • Maret 6, 2020: Dibuat

Latihan


Kebanyakan latihan disini telah memiliki source code lengkap. Anda dapat memodifikasikannya sesuai keperluan. Dan silakan bereksperimen dengan source code tersebut.

    Latihan 1: Copy File


    Pada latihan berikut ini, anda akan mempelajari cara paling dasar untuk melakukan copy file.


    0. Buka IDE Netbeans.
    1. Buka file projek FileDirectory.
    2. Buka file CopyFile.java.
    3. Pelajari code pada gambar di bawah.


    Gambar: File CopyFile.java

    4. Pastikan file test1.txt ada dalam folder projek yang sama. Compile dan run file. Cek folder dan file target telah tercipta.
                                                                                                                  return to top of the exercise

    Latihan 2: Copy File dengan Bantuan Class dari Apache

    Pada latihan sebelumnya, kita membuat program copy file. Ada beberapa package di luar Java IO yang telah membuat class khusus untuk copy file. Salah satunya dibuat oleh Apache. Dapat didownload disini. Kita akan menggunakan class FileUtils. Setelah didownload, extract zip atau tar.gz file.
    1. Pada   projects explorer NetBeans, klik kanan pada libraries, pilih Add Jar/Folder, kemudian pilih file commons-io-2.4.jar yang telah anda extract sebelumnya.

    2. Buat file baru ApacheFileUtils.java.
    3. Copy bagian method main pada file CopyFile.java dan paste ke dalam method main yang ada dalam ApacheFileUtils.java. Hapus dari bagian InputStream hingga out.close(); dan ganti dengan coding FileUtils.copyFile(f1, f2);
    Sebab anda telah import library apache commonio, secara otomatis sewaktu anda ketik FileUtils. akan langsung muncul pilihan method yang bisa dipilih. Seperti pada gambar di bawah.


    4. Kemudian run ApacheFileUtils.java. Hasilnya sama seperti latihan di atas yaitu mengcopy file. Namun menjadi lebih singkat.


                                                                                                                 return to top of the exercise
                                                                                                                            return to the top

    Latihan 3: File dari Network


    Dalam latihan berikut ini, anda akan mempelajari cara membaca file yang ada di jaringan internet. Jadi kita perlu tahu alamat URLnya.
    Untuk latihan berikut ini, kita akan coba membuka file xml. Kemudian latihan berikutnya akan mencoba parse XML menjadi DOM (Document Object Model)

    (3.1) Membuka File Teks di Internet


    1. Buka file ReadNetworkFile.java.
    2. Run file dan amati hasilnya di layar output.


    3. Coba bandingkan dengan membuka website sebenarnya di browser.

                                                                                                                  return to top of the exercise

    (3.2) Parse XML


    Pada latihan sebelumnya kita telah berhasil membaca file XML. File tersebut dapat diparse menjadi unsur-unsur yang lebih kecil berupa DOM.

    1. Buka file ReadXML.java.
    2. Run file dan amati hasilnya pada layar output.


    3. Hasil di atas baru tampilan berapa item dari elemen title. Andaikan kita ingin mencetak isi dari element title maka kita dapat menambahkan coding berikut:


    4. Run file dan anda akan mendapatkan hasil seperti di bawah.


                                                                                                                  return to top of the exercise

    Summary


    Pada latihan di atas, anda telah mempelajari cara membaca file XML dan parse dengan bantuan class dari package org.w3c.dom.

                                                                                                                        return to the top

    Latihan 4: Path dan Files


    Pada latihan-latihan sebelumnya anda menggunakan java.io. Maka mulai dari latihan ini, anda mencoba class dan interface yang ada di java.nio.

    (4.1) Memahami objek Path


    1. Buka file PakaiPath.java. Lihat tampilan codingnya seperti gambar di bawah.


    2. Run file PakaiPath.java.


    3. Pahami hasil outputnya.
    Baris #15 mencetak representasi string dari objek path. Objek Path tidak harus berupa path dari file atau directory yang wujud.
    Baris #16 mencetak nama file dari objek path yaitu test1.txt.
    Baris #17 mencetak jumlah unsur yang ada dalam objek path. Ada 3 disini yaitu temp, coba dan test1.txt.
    Untuk setiap unsur pada objek path dapat diakses dengan index. Index 0 merupakan indeks dari unsur paling atas dari objek path. Maka index dari jumlah unsur - 1 merupakan unsur yang paling bawah (baris #21).

    Path yang ada di atas ini sebenarnya tidak wujud. Nah bagaimana cara mencapai path yang wujud di komputer kita?
    Hal tersebut dapat dicapai dengan menggunakan method toRealPath (baris #24). Dan dicetak di baris #25. Hasil pencetakan ini akan berbeda, tergantung dimana file test1.txt anda simpan.

                                                                                                                  return to top of the exercise

    (4.2) Manage files


    1. Buka file ManageFile.java seperti pada gambar di bawah.


    2. Coba perhatikan folder projek FileDirectory. Disitu hanya ada test1.txt. Fungsi dari Files.copy() adalah untuk melakukan proses copy file. Singkat, hanya satu baris. Coba bandingkan dengan latihan 1.


    3. Sekarang run file ManageFile.java. Anda dapat melihat bahwa telah muncul file newfile.txt.


    Fungsi StandardCopyOption.REPLACE_EXISTING adalah untuk meng-copy file dan menghapus file yang telah ada. Jika kita tidak menggunakan ini, namun file target telah wujud maka akan muncul exception.

    4. Berikut kita akan coba menghapus file newfile.txt yang telah dicopy sebelumnya. Tambahkan coding seperti gambar di bawah.

    Run file dan perhatikan kembali folder FileDirectory, ternyata file newfile.txt sudah terhapus.

    5. Kemudian kita akan mencoba pindah file. Namun sebelumnya beri komentar pada perintah delete.
    Kemudian tambahkan coding seperti gambar di bawah.

    Disini kita buat direktori new. Kemudian kita pindah file hasil copy yaitu newfile.txt ke dalam direktori new. Cek pada folder new di windows explorer, apakah sudah berhasil dipindah atau belum.




    return to top of the exercise

    (4.3) Baca dan tulis Files


    1. Buka file ReadingWriting.java seperti pada gambar di bawah.


    Run file, maka akan tercetak content di layar output.


    2. Berikutnya kita tulis ke file baru.txt. Tambah coding berikut.
    Files.write(target, content.getBytes(charset));

    Buka folder FileDirectory dan sekarang anda menemukan file baru.txt yang telah berisi sama dengan isi dari test1.txt.



                                                                                                                  return to top of the exercise

    Summary


    Pada latihan di atas, anda telah mempelajari cara penggunaan Path dan Files

                                                                                                                        return to the top

    Latihan 5: File Tree


    Kita dapat menjejaki content yang ada dalam satu path atau disebut dengan file tree.


    (5.1) File visitor


    1. Buka file MyFileVisitor.java. Class MyFileVisitor.java merupakan subclass dari class SimpleFileVisitor.
    Klik kanan kemudian pilih Insert Code, kemudian generate Override Method... Maka NetBeans akan menambah method-method yang akan dioverride dari class SimpleFileVisitor secara otomatis.



    Pilih semua method pada tampilan seperti di bawah. Dan klik Generate.


    Maka akan muncul semua override method yang dapat anda ubah.

    2. Ubah setiap override method tadi menjadi seperti gambar di bawah.


    3. Di dalam folder FileDirectory telah disertakan folder testfiletree yang berisi 2 directory. Masing-masing directory memiliki 2 file teks.


    4. Buka file FileTree.java. Kemudian run file maka anda akan melihat output seperti pada gambar di bawah.


    Pahami hasil dari output tersebut berdasarkan yang anda ubah di class MyFileVisitor.

                                                                                                                  return to top of the exercise

    (5.2) File finder


    1. Buka FileFinder.java. Coding pada file tersebut sudah diubah sesuai dengan keperluan kita pada latihan ini. Pelajari dan pahami coding tersebut.
    2. Buka FileFinderTest.java dan pelajari coding yang telah disediakan.
    Run file dan perhatikan output seperti pada gambar di bawah.

    3. Sekarang coba ubah pattern pada new FileFinder menjadi new FileFinder("file*.txt"). Run file FileFinderTest.java dan apakah yang terhasil pada layar output?

                                                                                                                  return to top of the exercise
                                                                                                                  return to the top



    Latihan 6: Watch directory


    Pada latihan berikut ini, anda akan mempelajari cara agar perubahan yang terjadi pada directory dapat dideteksi.

    1. Buka file WatchDirectory.java. Pelajari coding tersebut.
    2. Run file dan lakukan perubahan pada folder testwatchdir. Dan amati perubahan yang muncul pada layar output.
    Coba tambah file afile.txt ke dalam folder tersebut. Klik kanan dan pilih New->Text Document. Contoh perubahan pada layar output dapat dilihat pada gambar di bawah.


    Coba tambah file file2.txt. Amati lagi perubahan pada layar output.
    Kemudian coba hapus file2.txt. Amati lagi perubahan pada layar output.


    Kemudian coba copy afile.txt. Lalu beri nama another.txt. Amati lagi perubahan pada layar output.
    Buka afile.txt dan ketik apa saja ke dalamnya. Kemudian simpan afile.txt. Amati lagi perubahan pada layar output.

    Jika anda telah selesai dengan latihan ini, jangan lupa untuk klik button Stop.

                                                                                                                  return to top of the exercise

    Summary


    Pada latihan sebelumnya anda melihat bagaimana penggunaan WatchService untuk mendeteksi perubahan yang dilakukan pada suatu directory. Perubahan tersebut dapat berupa mencipta file (ENTRY_CREATE), hapus file (ENTRY_DELETE), ubah file seperti ubah nama dan ubah content dari file (ENTRY_MODIFY).

                                                                                                                        return to the top

    Tugas


    1. Buat projek NetBeans HitungJamKerja yang melakukan hal-hal berikut:
    • Buka file hours.txt. File tersebut berisi:
      123 Kim 12.5 8.1 7.6 3.2
      456 Eric 4.0 11.6 6.5 2.7 12
      789 Stef 8.0 8.0 8.0 8.0 7.5
    • Buat program yang akan menghitung jumlah kerja perhari untuk setiap pekerja dan menghitung rata-rata jam kerja.
    • Contoh output yang diinginkan:
      Kim (ID#123) bekerja 31.4 jam (7.85 jam/hari)
      Eric (ID#456) bekerja 36.8 jam (7.36 jam/hari)
      Stef (ID#789) bekerja 39.5 jam (7.9 jam/hari)
    • Build dan run projek.

    2. Kirim file-file berikut melalui e-learning.
    • Print screen hasil running projek HitungJamKerja dan beri nama hitung.gif  atau hitung.jpg dan masukkan juga ke dalam zip file di bawah.
    •  
    • Compress file projek HitungJamKerja sebagai zip. Rename file kompresi tersebut menjadi NIM-Nama-HitungJamKerja. Ganti NIM dan Nama dengan NIM dan nama anda masing-masing.

    Komentar

    Postingan populer dari blog ini

    PROSEDUR PEMBUATAN INDIKATOR

    PROSEDUR PEMBUATAN INDIKATOR 1. EBT (ERIOCROM BLACK T) Timbang 100 mg serbuk zat warna EBT ,10 gram Kristal NaCl atau Kristal Na2SO4 an hidrat. Kedua zat tersebut dicampur dengan cara menggerus didalam mortar sampai halus dan merata. Penggunaannya 100 mg (seujung spatel ) untuk satu kali titrasi. 2. Merah metil Larutkan 25 mg metil P dengan 0,95 ml larutan Natrium hidroksida 0,05 N dan 5 ml etanol 95 % setelah larut sempurna, tambahkan etanol 50 % secukupnya hingga 250,0 ml 3. Jingga metil Larutkan jingga metil P 0,04 % b/v dalam etanol 20 % 4. BTB Larutkan 100 mg biru brom timol P dengan 3,2 ml Natrium Hidroksida 0,05 N dan 5 ml etanol 90 % ,setelah larut sempurna tambahkan etanol 20 % secukupnya hingga 250,0 ml. 5. MUREXIDE Haluskan 100 mg serbuk murexide dengan 10 gram KNO3 atau 10 gram NaCl . Pada pemakaiannya 100 gram serbuk murexide tiap volume 150 sampai 200 ml. 6. Larutan indicator Fenolftalein 0,035 %. Timbang ± 0,035 gram Fenolftalein ,lar

    LARUTAN PADA KIMIA ANALITIK KUANTITATIF

    LARUTAN PADA KIMIA ANALITIK KUANTITATIF 1.        LARUTAN NaOH 0,1  N                 4 gram NaOH dalam 1 Liter 2.        LARUTAN HCl 0,1 N HCl pekat = 37% HCl pekat = 12 M = 12 N                 8,33 mL HCl pekat = 1 Liter 0,1 N 3.        LARUTAN H 2 SO 4 0,1 N H 2 SO 4 pekat = 96 % H 2 SO 4 pekat = 17,63 M = 18 M = 36 N        2,78 mL H 2 SO 4 pekat = 1 liter 0,1 N 4.        LARUTAN CH 3 COOH 0,1 N CH 3 COOH pekat = 99,5 % CH 3 COOH pekat = 17 M = 17 N        5,88 mL CH 3 COOHpekat = 1 liter 0,1 N 5.        LARUTAN Na 2 S 2 O 3 0,1 N             26 gram Na 2 S 2 O 3 dengan 0,2   g Na 2 CO 3 dilarutkan dalam air bebas CO 2 segar sampai volume 1000 ml 6.        LARUTAN KIO 3 0,1 N             3 , 5 g KIO 3 encerkan dengan air hingga 1000 m L 7.        LARUTAN KMnO 4 0,1 N      3,3 gram Kalium Permanganat P adat dilarutkan dalan air hingga 1000 ml 8.        LARUTAN IODIUM (I 2 ) 0,1 N 12,69 gram I 2 P adat ke dalam la

    C++ #03 Mengenal Fungsi Input dan Output

    Belajar C++ #03: Mengenal Fungsi Input dan Output pada C++ #  C++ Pada dasarnya, program komputer hanya terdiri dari tiga bagian: Input  adalah sesuatu data yang kita masukan ke dalam program. Input biasanya diambil dari perangakat inputan seperti keyboard, mouse, kamera, microphone, dll. Proses  adalah langkah-langkah yang harus dilakukan program untuk menghasilkan output. Output  adalah informasi yang dihasilkan setelah dilakukan proses. Output biasanya ditampilkan ke layar komputer. Pada bahasa pemrograman C++, terdapat beberapa fungsi dasar untuk menampilkan output dan mengambil input. Apa saja itu? Mari kita bahas… Fungsi Output pada C++ C++ memiliki empat fungsi dasar untuk menampilkan output: cout  untuk menampilkan teks ke layar; cerr  untuk menampilkan error; clog  untuk menampilkan log; printf()  untuk menampilkan output, fungsi ini dari C; Kita akan fokus memabahas yang dua saja, yakni  cout  dan  printf() . Soalnya  cerr  dan  clog