Menguasai Java PrintWriter: Fitur, Metode, dan Contoh Praktis
Mastering Java PrintWriter
Dalam tutorial ini kita menjelajahi kelas PrintWriter Java, metodenya untuk mencetak, dan contoh kode praktis.
Kelas PrintWriter, bagian dari java.io, dirancang untuk menulis data karakter ke file teks atau aliran keluaran lain. Ia memperluas Writer dan menawarkan metode pemformatan yang nyaman.
Berbeda dengan writer lain, PrintWriter secara otomatis mengonversi tipe primitif (int, float, char, dll.) menjadi teks sebelum menulis. Ia juga tidak pernah melempar IOException; sebagai gantinya, Anda dapat mendeteksi kesalahan dengan checkError().
Auto-flush adalah fitur utama: jika diaktifkan, setiap pemanggilan println() atau printf() memaksa buffer untuk mengosongkan ke aliran dasar.
Bagaimana PrintWriter Bekerja
PrintWriter menulis teks yang diformat ke Writer atau OutputStream dasar. Konstruktornya menerima flag autoFlush dan, secara opsional, Charset untuk pengkodean.
Membuat PrintWriter
Pertama, impor kelas:
import java.io.PrintWriter;
1. Dari Writer yang ada
FileWriter file = new FileWriter("output.txt"); PrintWriter out = new PrintWriter(file, true); // autoFlush = true
2. Dari OutputStream
FileOutputStream fos = new FileOutputStream("output.txt"); PrintWriter out = new PrintWriter(fos, true);
3. Langsung dari nama file
PrintWriter out = new PrintWriter("output.txt", true);
4. Menentukan pengkodean karakter
import java.nio.charset.Charset; PrintWriter out = new PrintWriter("output.txt", true, Charset.forName("UTF-8"));
Menggunakan Charset memastikan teks Anda ditulis dengan pengkodean yang diinginkan.
Metode Utama
print() dan println()
Metode ini menulis teks mentah atau diakhiri baris:
print(obj) – menulis representasi string dari obj tanpa baris baru. println(obj) – menulis string dan menambahkan pemisah baris sistem.
printf()
Keluarga printf mendukung sintaks Formatter Java. Contoh:
out.printf("I am %d years old.", 25);
Metode lain yang berguna
| Method | Description |
close() | Menutup aliran dan melepaskan sumber daya. |
checkError() | Mengembalikan true jika terjadi kesalahan penulisan. |
append(CharSequence) | Menambahkan urutan yang diberikan ke writer. |
Contoh Praktis
Di bawah adalah program lengkap yang dapat dijalankan yang menulis teks yang diformat ke output.txt menggunakan printf():
import java.io.PrintWriter; import java.io.FileWriter; import java.io.IOException; public class PrintWriterDemo { public static void main(String[] args) { try (PrintWriter out = new PrintWriter(new FileWriter("output.txt"), true)) { int age = 25; out.printf("I am %d years old.\n", age); } catch (IOException e) { e.printStackTrace(); } } }
Menjalankan program ini membuat output.txt dengan baris:
I am 25 years old.
Baca Lebih Lanjut
Untuk spesifikasi resmi, lihat Java PrintWriter API dan dokumentasi Charset.