Java StringWriter (με παραδείγματα)

Σε αυτό το σεμινάριο, θα μάθουμε για το Java StringWriter και τις υποκατηγορίες του με τη βοήθεια παραδειγμάτων.

Η StringWriterκλάση του java.ioπακέτου μπορεί να χρησιμοποιηθεί για την εγγραφή δεδομένων (σε χαρακτήρες) στο buffer string.

Επεκτείνει την αφηρημένη τάξη Writer.

Σημείωση : Στην Java, το buffer string θεωρείται ως μεταβλητή συμβολοσειρά. Δηλαδή, μπορούμε να τροποποιήσουμε το buffer string. Για να μετατρέψουμε από το buffer string σε string, μπορούμε να χρησιμοποιήσουμε τη toString()μέθοδο.

Δημιουργήστε ένα StringWriter

Για να δημιουργήσουμε ένα StringWriter, πρέπει java.io.StringWriterπρώτα να εισαγάγουμε το πακέτο. Μόλις εισαγάγουμε το πακέτο εδώ είναι πώς μπορούμε να δημιουργήσουμε το πρόγραμμα δημιουργίας συμβολοσειρών.

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

Εδώ, δημιουργήσαμε το πρόγραμμα δημιουργίας συμβολοσειρών με προεπιλεγμένη χωρητικότητα buffer συμβολοσειράς Ωστόσο, μπορούμε επίσης να καθορίσουμε τη χωρητικότητα του buffer string.

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

Εδώ, το μέγεθος καθορίζει τη χωρητικότητα του buffer string.

Μέθοδοι StringWriter

Η StringWriterτάξη παρέχει υλοποιήσεις για διαφορετικές μεθόδους που υπάρχουν στην Writerτάξη.

μέθοδος ()

  • write() - γράφει έναν μόνο χαρακτήρα στον συγγραφέα συμβολοσειρών
  • write(char() array) - γράφει τους χαρακτήρες από τον καθορισμένο πίνακα στον συγγραφέα
  • write(String data) - γράφει την καθορισμένη συμβολοσειρά στον συγγραφέα

Παράδειγμα: 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(); ) ) ) 

Παραγωγή

 Δεδομένα στο StringWriter: Αυτό είναι το κείμενο της συμβολοσειράς. 

Στο παραπάνω παράδειγμα, έχουμε δημιουργήσει έναν συγγραφέα συμβολοσειρών που ονομάζεται έξοδος.

 StringWriter output = new StringWriter(); 

Στη συνέχεια, χρησιμοποιούμε τη write()μέθοδο για να γράψουμε τα δεδομένα συμβολοσειράς στο buffer συμβολοσειρών.

Σημείωση : Χρησιμοποιήσαμε τη toString()μέθοδο για τη λήψη των δεδομένων εξόδου από το buffer συμβολοσειράς σε μορφή συμβολοσειράς.

Πρόσβαση στα δεδομένα από το StringBuffer

  • getBuffer() - επιστρέφει τα δεδομένα που υπάρχουν στο buffer string
  • toString() - επιστρέφει τα δεδομένα που υπάρχουν στο buffer string ως string

Για παράδειγμα,

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

Παραγωγή

 StringBuffer: Αυτά είναι τα αρχικά δεδομένα String: Αυτά είναι τα αρχικά δεδομένα 

Εδώ χρησιμοποιήσαμε τη getBuffer()μέθοδο για να εμφανίσουμε τα δεδομένα στο buffer συμβολοσειρών. Και επίσης η μέθοδος toString()επιστρέφει τα δεδομένα που υπάρχουν στο buffer string ως string.

κλείσιμο () Μέθοδος

Για να κλείσουμε τη συμβολοσειρά, μπορούμε να χρησιμοποιήσουμε τη close()μέθοδο.

Ωστόσο, η close()μέθοδος δεν έχει καμία επίδραση στην StringWriterτάξη. Μπορούμε να χρησιμοποιήσουμε τις μεθόδους αυτής της τάξης ακόμα και μετά την close()κλήση της μεθόδου.

Άλλες μέθοδοι του StringWriter

Μέθοδος Περιγραφή
flush() αναγκάζει να γράψει όλα τα δεδομένα που υπάρχουν στον συγγραφέα στο buffer συμβολοσειρών
append() εισάγει τον καθορισμένο χαρακτήρα στον τρέχοντα συγγραφέα

Για να μάθετε περισσότερα, επισκεφθείτε το Java StringWriter (επίσημη τεκμηρίωση Java).

ενδιαφέροντα άρθρα...