CodeGym /مدونة جافا /Random-AR /BufferedReader وBufferedWriter
John Squirrels
مستوى
San Francisco

BufferedReader وBufferedWriter

نشرت في المجموعة
BufferedReader وBufferedWriter - 1تقرأ فئة Java BufferedReaderالنص من مجموعة من الرموز، وتقوم بتخزين الرموز مؤقتًا لقراءة الأحرف والمصفوفات والسلاسل بكفاءة. يمكنك تمرير حجم المخزن المؤقت إلى المنشئ كوسيطة ثانية. BufferedReader وBufferedWriter - 2البنائين:

BufferedReader(Reader in) // Creates a buffered stream for reading symbols. It uses the default buffer size.
BufferedReader(Reader in, int sz) // Creates a buffered stream for reading symbols. It uses the specified buffer size.
طُرق:

close() // Close the stream
mark(int readAheadLimit) // Mark the position in the stream
markSupported() // Indicates whether stream marking is supported
int	read() // Read the buffer
int	read(char[] cbuf, int off, int len) // Read the buffer
String	readLine() // Next line
boolean	ready() // Is the stream ready to read?
reset() // Reset the stream
skip(long n) // Skip characters

وفيما يلي مثال على استخدام BufferedReaderوالفئات BufferedWriter:

قراءة ملف:

import java.io.*;

public class ReadFile {
	public static void main(String[] args) {
		try {
			File file = new File("file.txt"); 
			FileReader fileReader = new FileReader(file); // A stream that connects to the text file
			BufferedReader bufferedReader = new BufferedReader(fileReader); // Connect the FileReader to the BufferedReader
			
			String line;
			while((line = bufferedReader.readLine()) != null) {
				System.out.println(line); // Display the file's contents on the screen, one line at a time
			}
			
			bufferedReader.close(); // Close the stream
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
}
تقوم فئة Java BufferedWriterبكتابة النص إلى دفق أحرف الإخراج، مما يؤدي إلى تخزين الأحرف مؤقتًا من أجل كتابة الأحرف والمصفوفات والسلاسل بكفاءة. يمكنك تمرير حجم المخزن المؤقت إلى المنشئ كوسيطة ثانية. البنائين:

BufferedWriter(Writer out) // Create a buffered output character stream that uses the default buffer size.
BufferedWriter(Writer out, int sz) // Creates a buffered character output stream that uses a buffer with the specified size.
طُرق:

close() // Close the stream
flush() // Send the data from the buffer to the Writer
newLine() // Move to a new line
write(char[] cbuf, int off, int len) // Write to the buffer
write(int c) // Write to the buffer
write(String s, int off, int len) // Write to the buffer

فيما يلي مثال على استخدام Java BufferedReaderوالفئات BufferedWriter:

الكتابة إلى ملف:

import java.io.*;

public class WriteFile {
    public static void main(String[] args) {
        String[] list = {"one", "two", "three", "fo"};
        try {
            File file = new File("file.txt");
            FileWriter fileReader = new FileWriter(file); // A stream that connects to the text file
            BufferedWriter bufferedWriter = new BufferedWriter(fileReader); // Connect the FileWriter to the BufferedWriter

            for (String s : list) {
                bufferedWriter.write(s + "\n");
            }

            bufferedWriter.close (); // Close the stream
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
FileWriterيكتب البيانات على القرص على الفور. في كل مرة نصل إليها، يعمل المخزن المؤقت الملتف حولها على تسريع تطبيقنا. سيقوم المخزن المؤقت بكتابة البيانات داخليًا، ثم يقوم لاحقًا بكتابة أجزاء كبيرة من الملفات على القرص. نقرأ البيانات من وحدة التحكم ونكتبها في ملف:

import java.io.*;

class ConsoleRead {
    public static void main(String[] args) {
        try {
            File file = new File("file.txt");
            InputStreamReader inputStreamReader = new InputStreamReader(System.in); // A stream for reading from the console
            BufferedReader bufferedReader = new BufferedReader(inputStreamReader); // Connect InputStreamReader to a BufferedReader

            FileWriter fileReader = new FileWriter(file); // A stream that connects to the text file
            BufferedWriter bufferedWriter = new BufferedWriter(fileReader); // Connect the FileWriter to the BufferedWriter

            String line;
            while(!(line = bufferedReader.readLine()).equals("exit")) {
                bufferedWriter.write(line);
            }

            bufferedReader.close(); // Close the stream
            bufferedWriter.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
تعليقات
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION