Kelas Java FileOutputStream: Panduan Komprehensif
Java FileOutputStream Class
Tutorial ini membahas kelas Java FileOutputStream, konstruktornya, metode kunci, dan contoh praktis.
Kelas FileOutputStream, yang merupakan bagian dari paket java.io, memungkinkan Anda menulis data byte mentah ke file. Ia memperluas kelas abstrak OutputStream dan esensial untuk operasi file biner.
Sebelum memulai FileOutputStream, pastikan Anda memahami konsep dasar penanganan file Java.
Membuat FileOutputStream
Untuk membuat FileOutputStream, impor kelas dari java.io dan buat instance dengan jalur file atau objek File.
1. Menggunakan jalur file
// Dengan flag append FileOutputStream output = new FileOutputStream(String path, boolean append); // Tanpa flag append FileOutputStream output = new FileOutputStream(String path);
Boolean append menentukan apakah data ditambahkan ke akhir file (true) atau menimpa konten yang ada (false).
2. Menggunakan objek File
FileOutputStream output = new FileOutputStream(File fileObject);
Konstruktor ini menghubungkan aliran ke file yang diwakili oleh fileObject.
Metode Utama FileOutputStream
FileOutputStream mengimplementasikan beberapa metode yang diwarisi dari OutputStream, masing-masing disesuaikan untuk operasi byte.
write()
write(int b) – menulis satu byte. write(byte[] b) – menulis seluruh array byte. write(byte[] b, int off, int len) – menulis len byte dari b mulai dari offset off.
Contoh: Menulis Teks ke File
import java.io.FileOutputStream; public class Main { public static void main(String[] args) { String data = "This is a line of text inside the file."; try { FileOutputStream output = new FileOutputStream("output.txt"); byte[] array = data.getBytes(); output.write(array); output.close(); } catch (Exception e) { e.printStackTrace(); } } }
Menjalankan program ini membuat output.txt yang berisi kalimat di atas. Metode getBytes() mengonversi string ke representasi byte UTF-8.
flush()
Metode flush() memaksa byte yang ditampung untuk ditulis ke file segera. Berguna saat Anda perlu memastikan persisten data sebelum menutup aliran.
import java.io.FileOutputStream; import java.io.IOException; public class Main { public static void main(String[] args) throws IOException { FileOutputStream out = new FileOutputStream("flush.txt"); String data = "This is demo of flush method"; out.write(data.getBytes()); out.flush(); out.close(); } }
close()
Setelah memanggil close(), aliran tidak dapat lagi digunakan. Melepaskan sumber daya sistem dan memastikan penangan file dibebaskan dengan benar.
Metode FileOutputStream Lainnya
| Method | Description |
finalize() | Dipanggil oleh pemroses sampah untuk menjamin close() dipanggil. |
getChannel() | Mengembalikan FileChannel terkait untuk operasi file lanjutan. |
getFD() | Mengambil deskriptor file yang mendasari. |
Untuk wawasan lebih dalam, lihat dokumentasi resmi Java FileOutputStream documentation.