Java StringWriter (з прикладами)

У цьому посібнику ми дізнаємося про Java StringWriter та його підкласи за допомогою прикладів.

StringWriterКлас java.ioпакета може використовуватися для запису даних (в символах) в рядку буфер.

Це розширює абстрактний клас Writer.

Примітка : У Java буфер рядків розглядається як змінний рядок. Тобто ми можемо змінити буфер рядків. Для перетворення з буфера рядка в рядок ми можемо використовувати toString()метод.

Створіть StringWriter

Для того, щоб створити StringWriter, ми повинні java.io.StringWriterспочатку імпортувати пакет. Як тільки ми імпортуємо пакет, ось як ми можемо створити рядок.

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

Тут ми створили рядопис із ємністю буфера рядків за замовчуванням. Однак ми також можемо вказати ємність буфера рядка.

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

Тут розмір визначає ємність буфера рядків.

Методи StringWriter

StringWriterКлас забезпечує реалізації для різних методів представлення в Writerкласі.

метод write ()

  • 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: Це текст у рядку. 

У наведеному вище прикладі ми створили рядок, що називається output.

 StringWriter output = new StringWriter(); 

Потім ми використовуємо write()метод для запису рядкових даних у буфер рядків.

Примітка : Ми використовували toString()метод для отримання вихідних даних із буфера рядків у формі рядка.

Доступ до даних із StringBuffer

  • getBuffer() - повертає дані, наявні в буфері рядків
  • toString() - повертає дані, наявні в буфері рядків, як рядок

Наприклад,

 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: Це оригінальні дані Рядок: Це оригінальні дані 

Тут ми використали getBuffer()метод для отримання даних, що містяться в буфері рядків. А також метод toString()повертає дані, наявні в буфері рядків, як рядок.

метод close ()

Щоб закрити рядопис, ми можемо використати close()метод.

Однак close()метод не має ефекту в StringWriterкласі. Ми можемо використовувати методи цього класу навіть після close()виклику методу.

Інші методи StringWriter

Метод Опис
flush() змушує записати всі дані, присутні в програмі запису, у буфер рядків
append() вставляє вказаний символ до поточного автора

Щоб дізнатись більше, відвідайте Java StringWriter (офіційна документація Java).

Цікаві статті...