JavaRush /وبلاگ جاوا /Random-FA /BufferedReader و BufferedWriter

BufferedReader و BufferedWriter

در گروه منتشر شد
کلاس Java BufferedReader متن را از جریان ورودی کاراکتر می خواند و کاراکترهای خوانده شده را بافر می کند تا خواندن کارآمد کاراکترها، آرایه ها و رشته ها را امکان پذیر کند. می توانید اندازه بافر را به عنوان پارامتر دوم در سازنده تعیین کنید.
BufferedReader و BufferedWriter - 1
طراحان:
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.
مواد و روش ها:
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
مثالی از استفاده از کلاس های BufferedReader و BufferedWriter: خواندن یک فایل:
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();
		}
	}

}
کلاس Java BufferedWriter متن را در جریان خروجی کاراکتر می نویسد و کاراکترهای نوشته شده را بافر می کند تا نوشتن کارآمد کاراکترها، آرایه ها و رشته ها را امکان پذیر کند. می توانید اندازه بافر را به عنوان پارامتر دوم در سازنده تعیین کنید. طراحان:
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.
مواد و روش ها:
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
مثالی از استفاده از کلاس های Java BufferedReader و BufferedWriter: نوشتن در یک فایل
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();
		}
	}

}
FileWriterبلافاصله داده ها را روی دیسک می نویسد و هر بار به آن دسترسی پیدا می کند، بافر به عنوان یک پوشش کار می کند و سرعت برنامه را افزایش می دهد. بافر داده ها را روی خود می نویسد و سپس در یک قطعه بزرگ از فایل ها روی دیسک می نویسد. داده ها را از کنسول می خوانیم و در یک فایل می نویسیم:
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();
		}
	}

}
نظرات
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION