Clase Java BufferedWriter
Clase Java BufferedWriter
En este tutorial, aprenderemos sobre Java BufferedWriter y sus métodos con la ayuda de ejemplos.
El BufferedWriter
clase del java.io
El paquete se puede usar con otros escritores para escribir datos (en caracteres) de manera más eficiente.
Extiende la clase abstracta Writer
.
Funcionamiento de BufferedWriter
El BufferedWriter
mantiene un búfer interno de 8192 caracteres .
Durante la operación de escritura, los caracteres se escriben en el búfer interno en lugar del disco. Una vez que se llena el búfer o se cierra el escritor, todos los caracteres del búfer se escriben en el disco.
Por lo tanto, se reduce el número de comunicaciones con el disco. Es por eso que escribir caracteres es más rápido usando BufferedWriter
.
Crear un BufferedWriter
Para crear un BufferedWriter
, debemos importar el java.io.BufferedWriter
paquete primero. Una vez que importamos el paquete, aquí es cómo podemos crear el escritor almacenado en búfer.
// Creates a FileWriter
FileWriter file = new FileWriter(String name);
// Creates a BufferedWriter
BufferedWriter buffer = new BufferedWriter(file);
En el ejemplo anterior, hemos creado un BufferedWriter
llamado búfer con el FileWriter
llamado archivo .
Aquí, el búfer interno del BufferedWriter
tiene el tamaño predeterminado de 8192 caracteres. Sin embargo, también podemos especificar el tamaño del búfer interno.
// Creates a BufferedWriter with specified size internal buffer
BufferedWriter buffer = new BufferedWriter(file, int size);
El búfer ayudará a escribir caracteres en los archivos de manera más eficiente.
Métodos de BufferedWriter
El BufferedWriter
la clase proporciona implementaciones para diferentes métodos presentes en Writer
.
método escribir()
write()
- escribe un solo carácter en el búfer interno del escritorwrite(char[] array)
- escribe los caracteres de la matriz especificada al escritorwrite(String data)
- escribe la cadena especificada al escritor
Ejemplo:BufferedWriter para escribir datos en un archivo
import java.io.FileWriter;
import java.io.BufferedWriter;
public class Main {
public static void main(String args[]) {
String data = "This is the data in the output file";
try {
// Creates a FileWriter
FileWriter file = new FileWriter("output.txt");
// Creates a BufferedWriter
BufferedWriter output = new BufferedWriter(file);
// Writes the string to the file
output.write(data);
// Closes the writer
output.close();
}
catch (Exception e) {
e.getStackTrace();
}
}
}
En el ejemplo anterior, hemos creado un escritor almacenado en búfer llamado salida junto con FileWriter
. El escritor almacenado en búfer está vinculado con output.txt archivo.
FileWriter file = new FileWriter("output.txt");
BufferedWriter output = new BufferedWriter(file);
Para escribir datos en el archivo, hemos utilizado el write()
método.
Aquí cuando ejecutamos el programa, el output.txt El archivo está lleno con el siguiente contenido.
This is a line of text inside the file.
Método de descarga()
Para borrar el búfer interno, podemos usar el flush()
método. Este método obliga al escritor a escribir todos los datos presentes en el búfer en el archivo de destino.
Por ejemplo, supongamos que tenemos un archivo vacío llamado output.txt .
import java.io.FileWriter;
import java.io.BufferedWriter;
public class Main {
public static void main(String[] args) {
String data = "This is a demo of the flush method";
try {
// Creates a FileWriter
FileWriter file = new FileWriter(" flush.txt");
// Creates a BufferedWriter
BufferedWriter output = new BufferedWriter(file);
// Writes data to the file
output.write(data);
// Flushes data to the destination
output.flush();
System.out.println("Data is flushed to the file.");
output.close();
}
catch(Exception e) {
e.getStackTrace();
}
}
}
Salida
Data is flushed to the file.
Cuando ejecutamos el programa, el archivo output.txt se rellena con el texto representado por la cadena datos .
Método cerrar()
Para cerrar el escritor almacenado en búfer, podemos usar close()
método. Una vez que el close()
se llama al método, no podemos usar el escritor para escribir los datos.
Otros métodos de BufferedWriter
Método | Descripción |
---|---|
newLine() | inserta una nueva línea al escritor |
append() | inserta el carácter especificado en el escritor actual |
Para obtener más información, visite Java BufferedWriter (documentación oficial de Java).
Java