Esta clase abstracta para escribir en secuencias de caracteres. Los únicos métodos que debe implementar una subclase son write(char[], int, int), flush() y close(). Sin embargo, la mayoría de las subclases anularán algunos de los métodos definidos aquí para proporcionar una mayor eficiencia, funcionalidad adicional o ambos.
Constructor
- protected Writer() : crea un nuevo escritor de flujo de caracteres cuyas secciones críticas se sincronizarán en el propio escritor.
- Escritor protegido (bloqueo de objeto): crea un nuevo escritor de flujo de caracteres cuyas secciones críticas se sincronizarán en el objeto dado.
Métodos:
- Writer append(char c) : Agrega el carácter especificado a este escritor. Una invocación de este método de la forma out.append(c) se comporta exactamente de la misma manera que la invocación
out.write(c)Syntax :public Writer append(char c) throws IOException Parameters: c - The 16-bit character to append Returns: This writer Throws: IOException
- Writer append(CharSequence csq) : Agrega la secuencia de caracteres especificada a este escritor. Una invocación de este método de la forma out.append(csq) se comporta exactamente de la misma manera que la invocación
out.write(csq.toString())
Dependiendo en la especificación de toString para la secuencia de caracteres csq, es posible que no se agregue la secuencia completa. Por ejemplo, invocar el método toString de un búfer de caracteres devolverá una subsecuencia cuyo contenido depende de la posición y el límite del búfer.Syntax :public Writer append(CharSequence csq) throws IOException Parameters: csq - The character sequence to append. If csq is null, then the four characters "null" are appended to this writer. Returns: This writer Throws: IOException
- Writer append(CharSequence csq, int start, int end) : Agrega una subsecuencia de la secuencia de caracteres especificada a este escritor. Agrega una subsecuencia de la secuencia de caracteres especificada a este escritor
Syntax :public Writer append(CharSequence csq, int start, int end) throws IOException Parameters: csq - The character sequence from which a subsequence will be appended. If csq is null, then characters will be appended as if csq contained the four characters "null". start - The index of the first character in the subsequence end - The index of the character following the last character in the subsequence Returns: This writer Throws: IndexOutOfBoundsException IOException
- abstract void close() : Cierra la transmisión y la limpia primero. Una vez que se ha cerrado la secuencia, las invocaciones adicionales de write() o flush() harán que se lance una IOException. Cerrar una transmisión previamente cerrada no tiene ningún efecto.
Syntax :public abstract void close() throws IOException Throws: IOException
- abstract void flush() : Vacía la secuencia. Si la secuencia ha guardado caracteres de los diversos métodos de escritura() en un búfer, escríbalos inmediatamente en el destino previsto. Luego, si ese destino es otro carácter o secuencia de bytes, descárguelo. Por lo tanto, una invocación de flush() vaciará todos los búferes en una string de Writers y OutputStreams.
Syntax :public abstract void flush() throws IOException Throws: IOException
- void write(char[] cbuf) : Escribe una array de caracteres.
Syntax :public void write(char[] cbuf) throws IOException Parameters: cbuf - Array of characters to be written Throws: IOException - If an I/O error occurs
- abstract void write(char[] cbuf, int off, int len) : Escribe una parte de una array de caracteres.
Syntax :public abstract void write(char[] cbuf, int off, int len) throws IOException Parameters: cbuf - Array of characters off - Offset from which to start writing characters len - Number of characters to write Throws: IOException
- void write(int c) : Escribe un solo carácter. El carácter que se va a escribir está contenido en los 16 bits de orden inferior del valor entero dado; los 16 bits de orden superior se ignoran.
Las subclases que pretenden admitir una salida eficiente de un solo carácter deben anular este método.Syntax :public void write(int c) throws IOException Parameters: c - int specifying a character to be written Throws: IOException
- void write(String str) : Escribe una string.
Syntax :public void write(String str) throws IOException Parameters: str - String to be written Throws: IOException
- void write(String str, int off, int len) : Escribe una parte de una string.
Syntax :public void write(String str, int off, int len) throws IOException Parameters: str - A String off - Offset from which to start writing characters len - Number of characters to write Throws: IndexOutOfBoundsException
Programa :
//Java program demonstrating Writer methods import java.io.IOException; import java.io.PrintWriter; import java.io.Writer; class WriterDemo { public static void main(String[] args) throws IOException { Writer wr=new PrintWriter(System.out); char c[] = {'B','C','D','E','F'}; CharSequence cs = "JKL"; String str = "GHI"; //illustrating write(int c) wr.write(65); //flushing the stream wr.flush(); //illustrating write(char[] c,int off,int len) wr.write(c); wr.flush(); //illustrating write(String str,int off,int len) wr.write(str); wr.flush(); //illustrating append(Charsequence cs,int start,int end) wr.append(cs); wr.flush(); //illustrating append(int ch) wr.append('M'); wr.flush(); //closing the stream wr.close(); } }
Producción :
ABCDEFGHIJKLM
Este artículo es una contribución de Nishant Sharma . Si le gusta GeeksforGeeks y le gustaría contribuir, también puede escribir un artículo usando contribuya.geeksforgeeks.org o envíe su artículo por correo a contribuya@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA