Lớp BufferedOutputStream trong java được sử dụng để đệm một output stream. Trong nội bộ của lớp này sử dụng bộ đệm để lưu trữ dữ liệu. Vì vậy, nó giúp hiệu suất ghi dữ liệu nhanh.
Để thêm bộ đệm vào một đối tượng OutputStream, sử dụng lớp BufferedOutputStream. Cú pháp để thêm bộ đệm vào một OutputStream như sau:
OutputStream os = null; os = new BufferedOutputStream(new FileOutputStream("D:\\IO Package\\testout.txt"));
Khai báo của lớp BufferedOutputStream
Dưới đây là khi báo của lớp Java.io.BufferedOutputStream:
public class BufferedOutputStream extends FilterOutputStream
Nội dung chính
Các constructor của lớp BufferedOutputStream
Constructor | Description |
---|---|
BufferedOutputStream(OutputStream os) | Nó tạo ra đối tượng BufferedOutputStream được sử dụng để ghi các dữ liệu vào output stream cụ thể. |
BufferedOutputStream(OutputStream os, int size) | Nó tạo ra đối tượng BufferedOutputStream được sử dụng để ghi các dữ liệu vào output stream cụ thể với kích thước bộ đệm cụ thể. |
Các phương thức của lớp BufferedOutputStream
Phương thức | Mô tả |
---|---|
void write(int b) | Nó được sử dụng để ghi một byte cụ thể tới buffered output stream. |
void write(byte[] b, int off, int len) | Nó ghi các byte từ byte-input stream được chỉ định vào mảng byte được chỉ định, bắt đầu bằng một giá trị cho trước off |
void flush() | Xả những gì được lưu trong bộ đệm. |
Ví dụ về ghi file trong java với lớp BufferedOutputStream
Trong ví dụ này, chúng ta ghi văn bản thông tin bằng đối tượng BufferedOutputStream được kết nối với đối tượng FileOutputStream. Phương thức flush() xả dữ liệu của một stream và gửi nó vào một stream khác. Nó được yêu cầu sử dụng nếu bạn đã kết nối một stream với một stream khác.
import java.io.BufferedOutputStream; import java.io.FileOutputStream; import java.io.IOException; public class BufferedOutputStreamExample { public static void main(String args[]) throws IOException { FileOutputStream fout = null; BufferedOutputStream bout = null; try { fout = new FileOutputStream("D:\\testout.txt"); bout = new BufferedOutputStream(fout); String s = "Welcome to java."; byte b[] = s.getBytes(); bout.write(b); bout.flush(); } catch (IOException ex) { ex.printStackTrace(); } finally { bout.close(); fout.close(); } System.out.println("success!"); } }
Output:
success!
File: testout.txt
Welcome to java.