Clase Java PrintWriter
Clase PrintWriter de Java
En este tutorial, aprenderemos sobre Java PrintWriter y sus métodos print() y printf() con la ayuda de ejemplos.
El PrintWriter
clase del java.io
El paquete se puede usar para escribir datos de salida en una forma comúnmente legible (texto).
Extiende la clase abstracta Writer
.
Funcionamiento de PrintWriter
A diferencia de otros escritores, PrintWriter
convierte los datos primitivos (int
, float
, char
, etc.) al formato de texto. Luego escribe esos datos formateados en el escritor.
Además, el PrintWriter
la clase no lanza ninguna excepción de entrada/salida. En su lugar, necesitamos usar el checkError()
método para encontrar cualquier error en él.
Nota :El PrintWriter
La clase también tiene una característica de lavado automático. Esto significa que obliga al escritor a escribir todos los datos en el destino si uno de los println()
o printf()
se llama a los métodos.
Crear un PrintWriter
Para crear un escritor de impresión, debemos importar el java.io.PrintWriter
paquete primero. Una vez que importamos el paquete aquí es cómo podemos crear el escritor de impresión.
// Creates a FileWriter
FileWriter file = new FileWriter("output.txt");
// Creates a PrintWriter
PrintWriter output = new PrintWriter(file, autoFlush);
Aquí,
- hemos creado un escritor de impresión que escribirá datos en el archivo representado por el
FileWriter
- descarga automática es un parámetro opcional que especifica si se debe realizar el lavado automático o no
// Creates a FileOutputStream
FileOutputStream file = new FileOutputStream("output.txt");
// Creates a PrintWriter
PrintWriter output = new PrintWriter(file, autoFlush);
Aquí,
- hemos creado un escritor de impresión que escribirá datos en el archivo representado por el
FileOutputStream
- el descarga automática es un parámetro opcional que especifica si se debe realizar el lavado automático o no
// Creates a PrintWriter
PrintWriter output = new PrintWriter(String file, boolean autoFlush);
Aquí,
- hemos creado un escritor de impresión que escribirá datos en el archivo especificado
- el descarga automática es un parámetro booleano opcional que especifica si se debe realizar un lavado automático o no
Nota :En todos los casos anteriores, el PrintWriter
escribe datos en el archivo utilizando alguna codificación de caracteres predeterminada. Sin embargo, podemos especificar la codificación de caracteres (UTF8 o UTF16 ) también.
// Creates a PrintWriter using some character encoding
PrintWriter output = new PrintWriter(String file, boolean autoFlush, Charset cs);
Aquí, hemos utilizado el Charset class para especificar la codificación de caracteres. Para saber más, visite Java Charset (documentación oficial de Java).
Métodos de PrintWriter
El PrintWriter
La clase proporciona varios métodos que nos permiten imprimir datos en la salida.
método imprimir()
print()
- imprime los datos especificados al escritorprintln()
- imprime los datos al escritor junto con un carácter de nueva línea al final
Por ejemplo,
import java.io.PrintWriter;
class Main {
public static void main(String[] args) {
String data = "This is a text inside the file.";
try {
PrintWriter output = new PrintWriter("output.txt");
output.print(data);
output.close();
}
catch(Exception e) {
e.getStackTrace();
}
}
}
En el ejemplo anterior, hemos creado un escritor de impresión llamado salida . Este editor de impresión está vinculado con el archivo output.txt .
PrintWriter output = new PrintWriter("output.txt");
Para imprimir datos en el archivo, hemos utilizado el print()
método.
Aquí cuando ejecutamos el programa, el output.txt El archivo está lleno con el siguiente contenido.
This is a text inside the file.
método printf()
El printf()
El método se puede utilizar para imprimir la cadena formateada. Incluye 2 parámetros:cadena formateada y argumentos. Por ejemplo,
printf("I am %d years old", 25);
Aquí,
- Soy
%d
años es una cadena formateada %d
son datos enteros en la cadena formateada- 25 es un argumento
La cadena formateada incluye texto y datos. Y, los argumentos reemplazan los datos dentro de la cadena formateada.
De ahí el %d se reemplaza por 25 .
Ejemplo:Método printf() usando PrintWriter
import java.io.PrintWriter;
class Main {
public static void main(String[] args) {
try {
PrintWriter output = new PrintWriter("output.txt");
int age = 25;
output.printf("I am %d years old.", age);
output.close();
}
catch(Exception e) {
e.getStackTrace();
}
}
}
En el ejemplo anterior, hemos creado un escritor de impresión llamado salida . El escritor de impresión está vinculado con el archivo output.txt .
PrintWriter output = new PrintWriter("output.txt");
Para imprimir el texto formateado en el archivo, hemos utilizado el printf()
método.
Aquí cuando ejecutamos el programa, el output.txt El archivo está lleno con el siguiente contenido.
I am 25 years old.
Otros métodos de PrintWriter
Método | Descripción |
---|---|
close() | cierra el editor de impresión |
checkError() | comprueba si hay un error en el escritor y devuelve un resultado booleano |
append() | añade los datos especificados al escritor |
Para obtener más información, visite Java PrintWriter (documentación oficial de Java).
Java