Apache Commons IO - Ikhtisar
Pustaka Apache Commons IO menyediakan berbagai kelas utilitas untuk operasi umum untuk File IO yang mencakup berbagai kasus penggunaan. Ini membantu menghindari penulisan kode boilerplate.
Perpustakaan Apache Commons IO menyediakan kelas untuk kategori berikut -
Kelas utilitas
Kelas-kelas ini yang berada di bawah org.apache.commons.iopaket, menyediakan perbandingan file dan string. Berikut adalah beberapa contohnya.
IOUtils- Menyediakan metode utilitas untuk membaca, menulis dan menyalin file. Metode ini bekerja dengan InputStream, OutputStream, Reader dan Writer.
FilenameUtils- Menyediakan metode untuk bekerja dengan nama file tanpa menggunakan Objek File. Ia bekerja pada sistem operasi yang berbeda dengan cara yang sama.
FileUtils - Menyediakan metode untuk memanipulasi file seperti memindahkan, membuka, memeriksa keberadaan, membaca file, dll. Metode ini menggunakan Objek File.
IOCase - Menyediakan metode untuk manipulasi dan perbandingan string.
FileSystemUtils - Menyediakan metode untuk mendapatkan ruang kosong pada disk drive.
LineIterator - Menyediakan cara yang fleksibel untuk bekerja dengan file berbasis baris.
Filter kelas
Kelas filter yang berada di bawah paket org.apache.commons.io.filefilter, menyediakan metode untuk memfilter file berdasarkan kriteria logis alih-alih perbandingan membosankan berbasis string. Berikut adalah beberapa contohnya.
NameFileFilter - Memfilter nama file untuk sebuah nama.
WildcardFileFilter - Memfilter file menggunakan wildcard yang disediakan.
SuffixFileFilter- Memfilter file berdasarkan sufiks. Ini digunakan untuk mengambil semua file dari tipe tertentu.
PrefixFileFilter - Memfilter file berdasarkan awalan.
OrFileFilter- Menyediakan logika OR bersyarat di seluruh daftar filter file. Mengembalikan nilai benar, jika ada filter dalam daftar yang mengembalikan nilai benar. Jika tidak, itu mengembalikan false.
AndFileFilter- Menyediakan kondisional dan logika di seluruh daftar filter file. Mengembalikan nilai salah jika ada filter dalam daftar yang mengembalikan nilai salah. Jika tidak, itu mengembalikan nilai true.
Kelas Monitor File
Kelas monitor file yang berada di bawah org.apache.commons.io.monitorpaket, memberikan kontrol untuk melacak perubahan dalam file atau folder tertentu dan memungkinkan untuk melakukan tindakan yang sesuai dengan perubahan tersebut. Berikut adalah beberapa contohnya.
FileEntry- Memberikan status file atau direktori. Atribut file pada suatu titik waktu.
FileAlterationObserver - Mewakili status file di bawah direktori root, memeriksa sistem file dan memberi tahu pendengar tentang membuat, mengubah, atau menghapus acara.
FileAlterationMonitor - Merepresentasikan utas yang memunculkan utas pemantauan yang memicu FileAlterationObserver terdaftar apa pun pada interval tertentu.
Kelas pembanding
Kelas monitor file di bawah org.apache.commons.io.comparator paket memungkinkan untuk membandingkan dan mengurutkan file dan direktori dengan mudah.
NameFileComparator - Bandingkan nama dua file.
SizeFileComparator - Bandingkan ukuran dua file.
LastModifiedFileComparator - Bandingkan tanggal modifikasi terakhir dari dua file.
Kelas aliran
Ada beberapa implementasi InputStream di bawah paket org.apache.commons.io.input dan OutputStream di bawah paket org.apache.commons.io.output, untuk melakukan tugas-tugas yang berguna di aliran. Berikut adalah beberapa contohnya.
NullOutputStream - Menyerap semua data yang dikirim dengan kesalahan apa pun.
TeeOutputStream - Mengirim keluaran ke dua aliran.
ByteArrayOutputStream - Versi kelas JDK yang lebih cepat.
CountingOutputStream - Menghitung jumlah byte yang melewati aliran.
ProxyOutputStream - Mengubah panggilan ke aliran proxy.
LockableFileWriter - FileWriter untuk membuat file kunci dan memungkinkan penanganan kunci file lintas utas sederhana.