In deze tutorial leren we met behulp van voorbeelden over Java StringWriter en zijn subklassen.
De StringWriter
klasse van het java.io
pakket 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.StringWriter
pakket 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 StringWriter
klasse biedt implementaties voor verschillende methoden die in de Writer
klasse aanwezig zijn.
write () methode
write()
- schrijft een enkel teken naar de tekenreeksschrijverwrite(char() array)
- schrijft de tekens uit de opgegeven array naar de schrijverwrite(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 tekenreeksbuffertoString()
- 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 StringWriter
klas. 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).