Java StringWriter (com exemplos)

Neste tutorial, aprenderemos sobre Java StringWriter e suas subclasses com a ajuda de exemplos.

A StringWriterclasse do java.iopacote pode ser usada para gravar dados (em caracteres) no buffer de string.

Ele estende a classe abstrata Writer.

Nota : Em Java, o buffer de string é considerado uma string mutável. Ou seja, podemos modificar o buffer da string. Para converter de buffer de string em string, podemos usar o toString()método.

Crie um StringWriter

Para criar um StringWriter, devemos java.io.StringWriterprimeiro importar o pacote. Depois de importar o pacote, aqui está como podemos criar o gravador de string.

 // Creates a StringWriter StringWriter output = new StringWriter(); 

Aqui, criamos o gravador de string com capacidade de buffer de string padrão. No entanto, podemos especificar a capacidade do buffer da string também.

 // Creates a StringWriter with specified string buffer capacity StringWriter output = new StringWriter(int size); 

Aqui, o tamanho especifica a capacidade do buffer da string.

Métodos de StringWriter

A StringWriterclasse fornece implementações para diferentes métodos presentes na Writerclasse.

Método write ()

  • write() - escreve um único caractere para o escritor de string
  • write(char() array) - grava os caracteres da matriz especificada para o escritor
  • write(String data) - escreve a string especificada para o escritor

Exemplo: Java StringWriter

 import java.io.StringWriter; public class Main ( public static void main(String() args) ( String data = "This is the text in the string."; try ( // Create a StringWriter with default string buffer capacity StringWriter output = new StringWriter(); // Writes data to the string buffer output.write(data); // Prints the string writer System.out.println("Data in the StringWriter: " + output); output.close(); ) catch(Exception e) ( e.getStackTrace(); ) ) ) 

Resultado

 Dados no StringWriter: este é o texto na string. 

No exemplo acima, criamos um escritor de string chamado output.

 StringWriter output = new StringWriter(); 

Em seguida, usamos o write()método para gravar os dados da string no buffer da string.

Nota : Usamos o toString()método para obter os dados de saída do buffer de string na forma de string.

Acessar dados de StringBuffer

  • getBuffer() - retorna os dados presentes no buffer da string
  • toString() - retorna os dados presentes no buffer da string como uma string

Por exemplo,

 import java.io.StringWriter; public class Main ( public static void main(String() args) ( String data = "This is the original data"; try ( // Create a StringWriter with default string buffer capacity StringWriter output = new StringWriter(); // Writes data to the string buffer output.write(data); // Returns the string buffer StringBuffer stringBuffer = output.getBuffer(); System.out.println("StringBuffer: " + stringBuffer); // Returns the string buffer in string form String string = output.toString(); System.out.println("String: " + string); output.close(); ) catch(Exception e) ( e.getStackTrace(); ) ) ) 

Resultado

 StringBuffer: Estes são os dados originais String: Estes são os dados originais 

Aqui, usamos o getBuffer()método para obter os dados presentes no buffer da string. E também o método toString()retorna os dados presentes no buffer de string como uma string.

Método close ()

Para fechar o gravador de string, podemos usar o close()método.

No entanto, o close()método não tem efeito na StringWriteraula. Podemos usar os métodos desta classe mesmo após o close()método ser chamado.

Outros métodos de StringWriter

Método Descrição
flush() força a gravar todos os dados presentes no gravador no buffer da string
append() insere o caractere especificado para o escritor atual

Para saber mais, visite Java StringWriter (documentação oficial do Java).

Artigos interessantes...