JavaRush /Blog Java /Random-FR /BufferedReader et BufferedWriter

BufferedReader et BufferedWriter

Publié dans le groupe Random-FR
La classe Java BufferedReader lit le texte à partir d'un flux d'entrée de caractères, mettant en mémoire tampon les caractères lus pour permettre une lecture efficace des caractères, des tableaux et des chaînes. Vous pouvez spécifier la taille du tampon comme deuxième paramètre du constructeur.
BufferedReader et BufferedWriter - 1
Concepteurs :
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.
Méthodes :
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
Exemple d'utilisation des classes BufferedReader et BufferedWriter : Lecture d'un fichier :
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();
		}
	}

}
La classe Java BufferedWriter écrit du texte dans le flux de sortie de caractères, mettant en mémoire tampon les caractères écrits pour permettre une écriture efficace de caractères, de tableaux et de chaînes. Vous pouvez spécifier la taille du tampon comme deuxième paramètre du constructeur. Concepteurs :
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.
Méthodes :
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
Exemple d'utilisation des classes Java BufferedReader et BufferedWriter : Écriture dans un fichier
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écrit immédiatement les données sur le disque et y accède à chaque fois, le tampon fonctionne comme un wrapper et accélère l'application. Le tampon écrira des données sur lui-même, puis un gros morceau de fichiers sur le disque. Nous lisons les données de la console et les écrivons dans un fichier :
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();
		}
	}

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