Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Industrial programming >> java

Освоение Java StringWriter: использование, методы и практические примеры

Класс Java StringWriter

Класс StringWriter в пакете java.io расширяет абстрактный Writer и позволяет записывать символьные данные в изменяемый строковый буфер. Буфер может расширяться по необходимости и позже преобразовываться в стандартный String через toString().

Примечание: В Java строковый буфер ведёт себя как изменяемая строка — его содержимое можно модифицировать. Метод toString() используется для получения текущего значения как неизменяемого String.


Создание StringWriter

Импортируйте класс:

import java.io.StringWriter;

Создайте объект:

// StringWriter с ёмкостью буфера по умолчанию
StringWriter output = new StringWriter();

Можно задать начальную ёмкость буфера для больших объёмов данных:

// StringWriter с заданной ёмкостью буфера
StringWriter output = new StringWriter(int size);

Аргумент size определяет начальную ёмкость внутреннего буфера.


Ключевые методы StringWriter

Метод write()


Пример: использование StringWriter

import java.io.StringWriter;

public class Main {
    public static void main(String[] args) {
        String data = "This is the text in the string.";
        try {
            // StringWriter с ёмкостью по умолчанию
            StringWriter output = new StringWriter();
            // Запись данных в буфер
            output.write(data);
            // Вывод содержимого
            System.out.println("Данные в StringWriter: " + output);
            output.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

Вывод

Данные в StringWriter: This is the text in the string.

Переменная output хранит экземпляр StringWriter. Метод write() добавляет строковые данные во внутренний буфер, а содержимое буфера отображается вызовом output.toString().

Доступ к данным из буфера

Пример:

import java.io.StringWriter;

public class Main {
    public static void main(String[] args) {
        String data = "This is the original data";
        try {
            StringWriter output = new StringWriter();
            output.write(data);
            StringBuffer sb = output.getBuffer();
            System.out.println("StringBuffer: " + sb);
            String str = output.toString();
            System.out.println("String: " + str);
            output.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

Вывод

StringBuffer: This is the original data
String: This is the original data

Метод close()

Вызов close() на StringWriter не освобождает ресурсы и не препятствует дальнейшим записям; объект остаётся пригодным после закрытия.


Дополнительные методы StringWriter

МетодОписание
flush()Гарантирует запись всех буферизованных данных в строковый буфер (фактически no-op для StringWriter).
append()Добавляет символ или строку в текущий буфер.

Полный справочник: официальная документация Java.

java

  1. Освоение строк в Java: создание, методы и лучшие практики
  2. Ключевое слово final в Java: переменные, методы и классы
  3. Оператор instanceof в Java: полное руководство с примерами
  4. Статические вложенные классы в Java: использование, отличия и примеры
  5. Анонимные внутренние классы в Java: определение, синтаксис и практические примеры
  6. Паттерн Singleton в Java: как реализовать и безопасно использовать
  7. Строковые представления в Java Enums: настройка toString() и лучшие практики
  8. Рефлексия в Java: инспекция классов, методов и полей во время выполнения
  9. Освоение Java ObjectOutputStream: сериализация, методы и практические примеры
  10. Освоение Java Generics: создание переиспользуемого, типобезопасного кода