W tym samouczku dowiemy się o języku Java StringWriter i jego podklasach za pomocą przykładów.
StringWriter
Klasa java.io
pakietu 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.StringWriter
pakiet. 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
StringWriter
Klasa zawiera implementacje dla różnych sposobów przedstawienia w Writer
klasie.
write () Metoda
write()
- zapisuje pojedynczy znak do urządzenia zapisującego ciągwrite(char() array)
- zapisuje znaki z określonej tablicy do modułu piszącegowrite(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ówtoString()
- 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 StringWriter
klasę. 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).