Java StringWriter (met voorbeelden)

In deze tutorial leren we met behulp van voorbeelden over Java StringWriter en zijn subklassen.

De StringWriterklasse van het java.iopakket kan worden gebruikt om gegevens (in tekens) naar de stringbuffer te schrijven.

Het breidt de abstracte klasse uit Writer.

Opmerking : in Java wordt stringbuffer beschouwd als een veranderlijke string. Dat wil zeggen, we kunnen de stringbuffer wijzigen. Om van stringbuffer naar string te converteren, kunnen we de toString()methode gebruiken.

Maak een StringWriter

Om een ​​te maken StringWriter, moeten we eerst het java.io.StringWriterpakket importeren . Zodra we het pakket hebben geïmporteerd, is hier hoe we de tekenreeksschrijver kunnen maken.

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

Hier hebben we de stringschrijver gemaakt met standaard stringbuffercapaciteit. We kunnen echter ook de capaciteit van de stringbuffer specificeren.

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

Hier specificeert de grootte de capaciteit van de stringbuffer.

Methoden van StringWriter

De StringWriterklasse biedt implementaties voor verschillende methoden die in de Writerklasse aanwezig zijn.

write () methode

  • write() - schrijft een enkel teken naar de tekenreeksschrijver
  • write(char() array) - schrijft de tekens uit de opgegeven array naar de schrijver
  • write(String data) - schrijft de opgegeven string naar de schrijver

Voorbeeld: 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(); ) ) ) 

Uitvoer

 Gegevens in de StringWriter: Dit is de tekst in de string. 

In het bovenstaande voorbeeld hebben we een tekenreeksschrijver gemaakt met de naam output.

 StringWriter output = new StringWriter(); 

Vervolgens gebruiken we de write()methode om de stringgegevens naar de stringbuffer te schrijven.

Opmerking : we hebben de toString()methode gebruikt om de uitvoergegevens van de stringbuffer in stringvorm te krijgen.

Toegang tot gegevens van StringBuffer

  • getBuffer() - geeft de gegevens terug die aanwezig zijn in de tekenreeksbuffer
  • toString() - retourneert de gegevens die aanwezig zijn in de stringbuffer als een string

Bijvoorbeeld,

 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(); ) ) ) 

Uitvoer

 StringBuffer: Dit zijn de originele gegevens. String: Dit zijn de originele gegevens 

Hier hebben we de getBuffer()methode gebruikt om de gegevens in de stringbuffer te krijgen. En ook toString()retourneert de methode de gegevens die aanwezig zijn in de stringbuffer als een string.

close () Methode

Om de tekenreeksschrijver te sluiten, kunnen we de close()methode gebruiken.

De close()methode heeft echter geen effect in de StringWriterklas. We kunnen de methoden van deze klasse gebruiken, zelfs nadat de close()methode is aangeroepen.

Andere methoden van StringWriter

Methode Omschrijving
flush() dwingt om alle gegevens in de schrijver naar de tekenreeksbuffer te schrijven
append() voegt het opgegeven teken in de huidige schrijver in

Bezoek voor meer informatie Java StringWriter (officiële Java-documentatie).

Interessante artikelen...