W tym samouczku dowiemy się o języku Java StringWriter i jego podklasach za pomocą przykładów.
StringWriterKlasa java.iopakietu mogą być wykorzystywane do zapisywania danych (w znakach) do bufora strun.
Rozszerza klasę abstrakcyjną Writer.

Uwaga : W języku Java bufor ciągów jest traktowany jako zmienny ciąg. Oznacza to, że możemy zmodyfikować bufor ciągów. Aby przekonwertować z bufora ciągu na łańcuch, możemy użyć toString()metody.
Utwórz StringWriter
Aby utworzyć plik StringWriter, musimy najpierw zaimportować java.io.StringWriterpakiet. Po zaimportowaniu pakietu tutaj możemy utworzyć program zapisujący ciąg.
 // Creates a StringWriter StringWriter output = new StringWriter(); 
Tutaj stworzyliśmy program zapisujący ciągi z domyślną pojemnością bufora ciągów. Możemy jednak również określić pojemność bufora ciągu.
 // Creates a StringWriter with specified string buffer capacity StringWriter output = new StringWriter(int size); 
Tutaj rozmiar określa pojemność bufora ciągów.
Metody StringWriter
StringWriterKlasa zawiera implementacje dla różnych sposobów przedstawienia w Writerklasie.
write () Metoda
- write()- zapisuje pojedynczy znak do urządzenia zapisującego ciąg
- write(char() array)- zapisuje znaki z określonej tablicy do modułu piszącego
- write(String data)- zapisuje określony ciąg do programu zapisującego
Przykład: 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(); ) ) ) 
Wynik
Dane w StringWriter: To jest tekst w ciągu.
W powyższym przykładzie utworzyliśmy program zapisujący ciąg o nazwie output.
 StringWriter output = new StringWriter(); 
Następnie używamy tej write()metody do zapisywania danych ciągu w buforze ciągów.
Uwaga : Użyliśmy tej toString()metody, aby uzyskać dane wyjściowe z bufora łańcuchowego w postaci ciągu.
Uzyskaj dostęp do danych z StringBuffer
- getBuffer()- zwraca dane obecne w buforze ciągów
- toString()- zwraca dane obecne w buforze ciągów jako ciąg
Na przykład,
 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(); ) ) ) 
Wynik
StringBuffer: To jest oryginalne dane. Ciąg: To są oryginalne dane
Tutaj użyliśmy getBuffer()metody, aby uzyskać dane obecne w buforze ciągów. Ponadto metoda toString()zwraca dane obecne w buforze ciągów jako ciąg.
close () Metoda
Aby zamknąć program zapisujący ciągi, możemy użyć close()metody.
Jednak close()metoda nie ma wpływu na StringWriterklasę. Z metod tej klasy możemy korzystać nawet po close()wywołaniu metody.
Inne metody StringWriter
| metoda | Opis | 
|---|---|
| flush() | wymusza zapisanie wszystkich danych znajdujących się w programie zapisującym do bufora ciągu | 
| append() | wstawia określony znak do bieżącego modułu zapisującego | 
Aby dowiedzieć się więcej, odwiedź stronę Java StringWriter (oficjalna dokumentacja Java).








