java
Dalam tutorial ini, kita akan belajar tentang Java BufferedOutputStream dan metodenya dengan bantuan contoh.
BufferedOutputStream
kelas java.io
package digunakan dengan aliran keluaran lain untuk menulis data (dalam byte) dengan lebih efisien.
Ini memperluas OutputStream
kelas abstrak.
BufferedOutputStream
mempertahankan buffer internal sebesar 8192 byte .
Selama operasi tulis, byte ditulis ke buffer internal, bukan ke disk. Setelah buffer diisi atau aliran ditutup, seluruh buffer ditulis ke disk.
Oleh karena itu, jumlah komunikasi ke disk berkurang. Inilah sebabnya mengapa menulis byte lebih cepat menggunakan BufferedOutputStream
.
Untuk membuat BufferedOutputStream
, kita harus mengimpor java.io.BufferedOutputStream
paket dulu. Setelah kita mengimpor paket, inilah cara kita membuat aliran keluaran.
// Creates a FileOutputStream
FileOutputStream file = new FileOutputStream(String path);
// Creates a BufferedOutputStream
BufferedOutputStream buffer = new BufferOutputStream(file);
Pada contoh di atas, kita telah membuat BufferdOutputStream
bernama penyangga dengan FileOutputStream
bernama file .
Di sini, buffer internal memiliki ukuran default 8192 byte. Namun, kami juga dapat menentukan ukuran buffer internal.
// Creates a BufferedOutputStream with specified size internal buffer
BufferedOutputStream buffer = new BufferOutputStream(file, int size);
penyangga akan membantu menulis byte ke file lebih cepat.
BufferedOutputStream
class menyediakan implementasi untuk berbagai metode di OutputStream
kelas.
write()
- menulis satu byte ke buffer internal aliran keluaranwrite(byte[] array)
- menulis byte dari larik yang ditentukan ke aliran keluaranwrite(byte[] arr, int start, int length)
- menulis jumlah byte sama dengan panjang ke aliran keluaran dari larik yang dimulai dari posisi start
import java.io.FileOutputStream;
import java.io.BufferedOutputStream;
public class Main {
public static void main(String[] args) {
String data = "This is a line of text inside the file";
try {
// Creates a FileOutputStream
FileOutputStream file = new FileOutputStream("output.txt");
// Creates a BufferedOutputStream
BufferedOutputStream output = new BufferedOutputStream(file);
byte[] array = data.getBytes();
// Writes data to the output stream
output.write(array);
output.close();
}
catch (Exception e) {
e.getStackTrace();
}
}
}
Pada contoh di atas, kami telah membuat aliran keluaran buffer bernama output bersama dengan FileOutputStream
. Aliran keluaran ditautkan dengan file output.txt .
FileOutputStream file = new FileOutputStream("output.txt");
BufferedOutputStream output = new BufferedOutputStream(file);
Untuk menulis data ke file, kami telah menggunakan write()
metode.
Di sini saat kita menjalankan program, output.txt file diisi dengan konten berikut.
This is a line of text inside the file.
Catatan :getBytes()
metode yang digunakan dalam program mengubah string menjadi array byte.
Untuk menghapus buffer internal, kita dapat menggunakan flush()
metode. Metode ini memaksa aliran keluaran untuk menulis semua data yang ada di buffer ke file tujuan. Misalnya,
import java.io.FileOutputStream;
import java.io.BufferedOutputStream;
public class Main {
public static void main(String[] args) {
String data = "This is a demo of the flush method";
try {
// Creates a FileOutputStream
FileOutputStream file = new FileOutputStream(" flush.txt");
// Creates a BufferedOutputStream
BufferedOutputStream buffer = new BufferedOutputStream(file);
// Writes data to the output stream
buffer.write(data.getBytes());
// Flushes data to the destination
buffer.flush();
System.out.println("Data is flushed to the file.");
buffer.close();
}
catch(Exception e) {
e.getStackTrace();
}
}
}
Keluaran
Data is flushed to the file.
Saat kita menjalankan program, file flush.txt diisi dengan teks yang diwakili oleh string data .
Untuk menutup aliran keluaran buffer, kita dapat menggunakan close()
metode. Setelah metode dipanggil, kita tidak dapat menggunakan aliran keluaran untuk menulis data.
Untuk mempelajari lebih lanjut, kunjungi Java BufferedOutputStream (dokumentasi resmi Java).
java
Kelas Java PrintStream Dalam tutorial ini, kita akan belajar tentang kelas Java PrintStream dan metode print() dan printf() dengan bantuan contoh. PrintStream kelas java.io package dapat digunakan untuk menulis data keluaran dalam bentuk (teks) yang dapat dibaca secara umum alih-alih byte. Ini mem
Kelas Penulis Java Dalam tutorial ini, kita akan belajar tentang Java Writer, subclass-nya dan metodenya dengan bantuan sebuah contoh. Writer kelas java.io package adalah superclass abstrak yang mewakili aliran karakter. Sejak Writer adalah kelas abstrak, itu tidak berguna dengan sendirinya. Namun
Kelas OutputStreamWriter Java Dalam tutorial ini, kita akan belajar tentang Java OutputStreamWriter dan metodenya dengan bantuan contoh. OutputStreamWriter kelas java.io package dapat digunakan untuk mengubah data dalam bentuk karakter menjadi data dalam bentuk byte. Ini memperluas kelas abstrak W
Kelas Java PrintWriter Dalam tutorial ini, kita akan belajar tentang Java PrintWriter dan metode print() dan printf() dengan bantuan contoh. PrintWriter kelas java.io package dapat digunakan untuk menulis data keluaran dalam bentuk (teks) yang dapat dibaca secara umum. Ini memperluas kelas abstrak