JavaRush /Java-Blog /Random-DE /BufferedReader und BufferedWriter

BufferedReader und BufferedWriter

Veröffentlicht in der Gruppe Random-DE
Die Java- Klasse BufferedReader liest Text aus einem Zeicheneingabestream und puffert die gelesenen Zeichen, um ein effizientes Lesen von Zeichen, Arrays und Zeichenfolgen zu ermöglichen. Sie können die Puffergröße als zweiten Parameter im Konstruktor angeben.
BufferedReader und BufferedWriter – 1
Designer:
BufferedReader(Reader in) // Erstellt einen Zeicheneingabepuffer-Stream, der die Standardpuffergröße verwendet.
BufferedReader(Reader in, int sz) // Erstellt einen Zeicheneingabepuffer-Stream, der die angegebene Größe verwendet.
Methoden:
close() // Schließe den Stream
mark(int readAheadLimit) // Markiere die Position im Stream
markSupported() // Unterstützt es Thread-Tagging?
int read() // Puffer lesen
int read(char[] cbuf, int off, int len) // Puffer lesen
String readLine() // nächste Zeile
boolean ready() // kann der Thread lesen
reset() // Stream zurücksetzen
skip(long n) // Zeichen überspringen
Beispiel für die Verwendung der Klassen BufferedReader und BufferedWriter: Lesen einer Datei:
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();
		}
	}

}
Die Java- Klasse BufferedWriter schreibt Text in den Zeichenausgabestream und puffert die geschriebenen Zeichen, um ein effizientes Schreiben von Zeichen, Arrays und Zeichenfolgen zu ermöglichen. Sie können die Puffergröße als zweiten Parameter im Konstruktor angeben. Designer:
BufferedWriter(Writer out) // Erstellt einen Zeichenausgabepuffer-Stream, der die Standardpuffergröße verwendet.
BufferedWriter(Writer out, int sz) // Erstellt einen Zeichenausgabepuffer-Stream, der die angegebene Größe verwendet.
Methoden:
close() // Schließe den Stream
flush() // Daten vom Puffer an den Writer übergeben
newLine() // Umbruch in neue Zeile
write(char[] cbuf, int off, int len) // in den Puffer schreiben
write(int c) // in den Puffer schreiben
write(String s, int off, int len) // in den Puffer schreiben
Beispiel für die Verwendung der Java-Klassen BufferedReader und BufferedWriter: Schreiben in eine Datei
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();
		}
	}

}
FileWriterschreibt Daten sofort auf die Festplatte und greift jedes Mal darauf zu, der Puffer fungiert als Wrapper und beschleunigt die Anwendung. Der Puffer schreibt Daten in sich selbst und dann einen großen Teil der Dateien auf die Festplatte. Wir lesen Daten von der Konsole und schreiben sie in eine Datei:
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")) { // Schleife beim Schreiben der Zeile „exit“ unterbrechen
					writter.write(line);
				}
			}
		}
         catch (IOException e) {
			e.printStackTrace();
		}
	}

}
Kommentare
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION