Neste tutorial, aprenderemos sobre Java StringWriter e suas subclasses com a ajuda de exemplos.
A StringWriter
classe do java.io
pacote 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.StringWriter
primeiro 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 StringWriter
classe fornece implementações para diferentes métodos presentes na Writer
classe.
Método write ()
write()
- escreve um único caractere para o escritor de stringwrite(char() array)
- grava os caracteres da matriz especificada para o escritorwrite(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 stringtoString()
- 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 StringWriter
aula. 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).