El método write() en la clase BufferedWriter en Java se usa de tres maneras:
1. El método write(int) de la clase BufferedWriter en Java se usa para escribir un solo carácter a la vez en el flujo de escritura del búfer.
Sintaxis:
public void write(int ch) throws IOException
Anulaciones: Este método anula el método write() de la clase Writer .
Parámetros: este método acepta un solo parámetro ch que representa el carácter que se va a escribir.
Valor devuelto : este método no devuelve ningún valor.
Excepciones: este método lanza IOException si ocurre un error de E/S.
El siguiente programa ilustra el método write(int) en la clase BufferedWriter en el paquete IO:
Programa:
// Java program to illustrate // BufferedWriter write(int) method import java.io.*; public class GFG { public static void main(String[] args) throws IOException { // Create the string Writer StringWriter stringWriter = new StringWriter(); // Convert stringWriter to // bufferedWriter BufferedWriter buffWriter = new BufferedWriter( stringWriter); // Write "G" to buffer writer buffWriter.write(71); // Write "E" to buffer writer buffWriter.write(69); // Write "E" to buffer writer buffWriter.write(69); // Write "K" to buffer writer buffWriter.write(75); // Write "S" to buffer writer buffWriter.write(83); buffWriter.flush(); System.out.println( stringWriter.getBuffer()); } }
GEEKS
2. El método write(String s, int off, int len) de la clase BufferedWriter en Java se usa para escribir una parte de una string pasada como parámetro en el flujo de escritura del búfer.
Sintaxis:
public void write(String s, int off, int len) throws IOException
Anulaciones: Este método anula el método write() de la clase Writer .
Parámetros: Este método acepta tres parámetros:
- s – Representa la string, cuya parte está por escribir.
- off : representa el índice en la string desde la que se inicia la escritura.
- len : representa la longitud de la parte de la string que se va a escribir.
Valor devuelto : este método no devuelve ningún valor.
Excepciones:
- IndexOutOfBoundsException : este método lanza IndexOutOfBoundsException si el índice pasado es negativo o si la longitud de la porción pasada es mayor que la longitud de la string dada.
- IOException : este método arroja IOException si se produce un error de IO.
Nota: este método debe generar una excepción IndexOutOfBoundsException si la longitud de la parte de la string (len) es negativa o el índice es negativo, pero este método no genera tal excepción en estos casos. No escribe caracteres en lugar de lanzar una excepción en tales casos.
El siguiente programa ilustra el método write(String) en la clase BufferedWriter en el paquete IO:
Programa:
// Java program to illustrate // BufferedWriter write(String) method import java.io.*; public class GFG { public static void main(String[] args) throws IOException { // Create the string Writer StringWriter stringWriter = new StringWriter(); // Convert stringWriter to // bufferedWriter BufferedWriter buffWriter = new BufferedWriter( stringWriter); // Write "GEEKS" to buffer writer buffWriter.write( "GEEKSFORGEEKS", 0, 5); buffWriter.flush(); System.out.println( stringWriter.getBuffer()); } }
GEEKS
3. El método write(char[ ] cbuf, int off, int len) de la clase BufferedWriter en Java se usa para escribir una parte de una array de caracteres pasados como parámetro en el flujo de escritura del búfer. Este método generalmente almacena los caracteres de la array en la secuencia y vacía el búfer a la corriente principal. Puede usar directamente la corriente principal cuando la longitud del búfer es igual a la longitud de la array.
Sintaxis:
public void write(char[ ] cbuf, int off, int len) throws IOException
Especificado por: este método está especificado por el método write() de la clase Writer .
Parámetros: Este método acepta tres parámetros:
- cbuf – Representa la array de caracteres, la parte de la cual se escribirá.
- off – Representa el índice del arreglo desde el cual se inicia la escritura.
- len : representa la longitud de la parte de la array que se escribirá.
Valor devuelto : este método no devuelve ningún valor.
Excepciones:
- IndexOutOfBoundsException : este método lanza IndexOutOfBoundsException si el índice pasado es negativo o si la longitud de la porción pasada es mayor que la longitud de la array de caracteres dada.
- IOException : este método arroja IOException si se produce un error de IO.
El siguiente programa ilustra el método write(char[ ]) en la clase BufferedWriter en el paquete IO:
Programa:
// Java program to illustrate // BufferedWriter write(char[ ]) method import java.io.*; public class GFG { public static void main(String[] args) throws IOException { // Create the string Writer StringWriter stringWriter = new StringWriter(); // Convert stringWriter to // bufferedWriter BufferedWriter buffWriter = new BufferedWriter( stringWriter); // Create character array char cbuf[] = { 'G', 'E', 'E', 'K', 'S', 'F', 'O', 'R' }; // Write "GEEKS" to buffer writer buffWriter.write(cbuf, 0, 5); // Write "FOR" to buffer writer buffWriter.write(cbuf, 5, 3); // Again write "GEEKS" to buffer writer buffWriter.write(cbuf, 0, 5); buffWriter.flush(); System.out.println( stringWriter.getBuffer()); } }
GEEKSFORGEEKS
Referencias:
1. https://docs.oracle.com/javase/10/docs/api/java/io/BufferedWriter.html#write(int)
2. https://docs.oracle.com/javase/10/ docs/api/java/io/BufferedWriter.html#write(java.lang.String, int, int)
3. https://docs.oracle.com/javase/10/docs/api/java/io/BufferedWriter. html#write(char%5B%5D, int, int)