JavaRush /Blog Java /Random-VI /BufferedReader và BufferedWriter

BufferedReader và BufferedWriter

Xuất bản trong nhóm
Lớp Java BufferedReader đọc văn bản từ luồng đầu vào ký tự, lưu vào bộ nhớ đệm các ký tự đã đọc để cho phép đọc ký tự, mảng và chuỗi một cách hiệu quả. Bạn có thể chỉ định kích thước bộ đệm làm tham số thứ hai trong hàm tạo.
BufferedReader và BufferedWriter - 1
Nhà thiết kế:
BufferedReader(Reader in) // Creates a character input buffer stream that uses the default buffer size.
BufferedReader(Reader in, int sz) // Creates a character input buffer stream that uses the specified size.
Phương pháp:
close() // close the stream
mark(int readAheadLimit) // mark the position in the stream
markSupported() // does it support thread tagging
int read() // read buffer
int read(char[] cbuf, int off, int len) // read buffer
String readLine() // next line
boolean ready() // can the thread read
reset() // reset stream
skip(long n) // skip characters
Ví dụ về việc sử dụng các lớp BufferedReader và BufferedWriter: Đọc một tập tin:
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;

public class FileReaderExample {

	public static void main(String[] args) {
		String inputFileName = "file.txt";

		try (BufferedReader reader = new BufferedReader(new FileReader(inputFileName))) {
			String line;
			while ((line = reader.readLine()) != null) {
				System.out.println(line + "\n");
			}
		}
                catch (IOException e) {
			e.printStackTrace();
		}
	}

}
Lớp Java BufferedWriter ghi văn bản vào luồng đầu ra ký tự, đệm các ký tự đã viết để cho phép ghi ký tự, mảng và chuỗi một cách hiệu quả. Bạn có thể chỉ định kích thước bộ đệm làm tham số thứ hai trong hàm tạo. Nhà thiết kế:
BufferedWriter(Writer out) // Creates a character output buffer stream that uses the default buffer size.
BufferedWriter(Writer out, int sz) // Creates a character output buffer stream that uses the specified size.
Phương pháp:
close() // close the stream
flush() // pass data from buffer to Writer
newLine() // wrap to new line
write(char[] cbuf, int off, int len) // write to buffer
write(int c) // write to buffer
write(String s, int off, int len) // write to buffer
Ví dụ về cách sử dụng các lớp Java BufferedReader và BufferedWriter: Ghi vào một tệp
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;

public class FileWritterExample {

	public static void main(String[] args) {
		String outputFileName = "file.txt";
		String[] array = { "one", "two", "three", "four" };

		try (BufferedWriter writter = new BufferedWriter(new FileWriter(outputFileName))) {
			for (String value : array) {
				writter.write(value + "\n");
			}
		}
        catch (IOException e) {
			e.printStackTrace();
		}
	}

}
FileWriterngay lập tức ghi dữ liệu vào đĩa và truy cập nó mọi lúc, bộ đệm hoạt động như một trình bao bọc và tăng tốc ứng dụng. Bộ đệm sẽ ghi dữ liệu vào chính nó và sau đó ghi một phần lớn tệp vào đĩa. Chúng tôi đọc dữ liệu từ bảng điều khiển và ghi nó vào một tệp:
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStreamReader;

public class ConsoleReaderExample {

	public static void main(String[] args) {
		String outputFileName = "file.txt";

		try (BufferedReader reader = new BufferedReader(new InputStreamReader(System.in))) {
			try (BufferedWriter writter = new BufferedWriter(new FileWriter(outputFileName))) {
				String line;
				while (!(line = reader.readLine()).equals("exit")) { // Break the loop when writing the line exit
					writter.write(line);
				}
			}
		}
         catch (IOException e) {
			e.printStackTrace();
		}
	}

}
Bình luận
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION