JavaRush /مدونة جافا /Random-AR /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