Класс StringWriter
- java.lang.Object
-
- java.io.Writer
-
- java.io.StringWriter
- Все реализованные интерфейсы:
-
Closeable,Flushable,Appendable,AutoCloseable
public class StringWriter extends Writer
Поток символов, который собирает свой вывод в буфере строк, который затем может быть использован для построения строки.
Закрытие потока StringWriter не имеет эффекта. Методы в этом классе могут быть вызваны после закрытия потока без генерации исключения IOException.
- С тех пор:
- 1.1
Поля
Поля, объявленные в классе java.io.Writer
lockКонструкторы
| Конструктор | Описание |
|---|---|
StringWriter() | Создает новый объект StringWriter с размером буфера строк по умолчанию. |
StringWriter(int initialSize) | Создает новый объект StringWriter с заданным начальным размером буфера строк. |
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
StringWriter | append(char c) | Добавляет указанный символ в этот поток. |
StringWriter | append(CharSequence csq) | Добавляет указанную последовательность символов в этот поток. |
StringWriter | append(CharSequence csq,
int start,
int end) | Добавляет подпоследовательность указанной последовательности символов в этот поток. |
void | close() | Закрытие потока |
void | flush() | Очистить поток. |
StringBuffer | getBuffer() | Возвращает сам буфер строк. |
String | toString() | Возвращает текущее значение буфера в виде строки. |
void | write(char[] cbuf,
int off,
int len) | Записать часть массива символов. |
void | write(int c) | Записать один символ. |
void | write(String str) | Записать строку. |
void | write(String str,
int off,
int len) | Записать часть строки. |
Методы, объявленные в классе java.io.Writer
nullWriter, writeМетоды, объявленные в классе java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitКонструкторы
StringWriter
public StringWriter()
Создает новый объект StringWriter с размером буфера строк по умолчанию.
StringWriter
public StringWriter(int initialSize)
Создает новый объект StringWriter с заданным начальным размером буфера строк.
- Параметры:
-
initialSize- Количество значенийchar, которые могут поместиться в этот буфер, прежде чем он будет автоматически расширен - Исключения:
-
IllegalArgumentException- ЕслиinitialSizeотрицательно
Методы
write
public void write(int c)
Записать один символ.
write
public void write(char[] cbuf,
int off,
int len)Записать часть массива символов.
- Указано в:
-
writeв классеWriter - Параметры:
-
cbuf- Массив символов -
off- Смещение для начала записи символов -
len- Количество символов для записи - Исключения:
-
IndexOutOfBoundsException- Еслиoffотрицательно, илиlenотрицательно, илиoff + lenотрицательно или больше длины данного массива
write
public void write(String str)
Записать строку.
write
public void write(String str,
int off,
int len)Записать часть строки.
- Переопределяет:
-
writeв классеWriter - Параметры:
-
str- Строка для записи -
off- Смещение для начала записи символов -
len- Количество символов для записи - Исключения:
-
IndexOutOfBoundsException- Еслиoffотрицательно, илиlenотрицательно, илиoff + lenотрицательно или больше длины заданной строки
append
public StringWriter append(CharSequence csq)
Добавляет указанную последовательность символов в этот поток.
Вызов этого метода формы out.append(csq) ведет себя точно так же, как вызов
out.write(csq.toString())
В зависимости от спецификации toString для последовательности символов csq, вся последовательность может быть не добавлена. Например, вызов метода toString буфера символов вернёт подпоследовательность, содержание которой зависит от позиции и предела буфера.
- Указано в:
-
appendв интерфейсеAppendable - Переопределяет:
-
appendв классеWriter - Параметры:
-
csq- Последовательность символов для добавления. Еслиcsqявляетсяnull, то четыре символа"null"добавляются в этот поток. - Возвращает:
- Этот поток
- С тех пор:
- 1.5
append
public StringWriter append(CharSequence csq,
int start,
int end)Добавляет подпоследовательность указанной последовательности символов в этот поток.
Вызов этого метода формы out.append(csq, start, end) когда csq не является null, ведет себя точно так же, как вызов
out.write(csq.subSequence(start, end).toString())
- Указано в:
-
appendв интерфейсеAppendable - Переопределяет:
-
appendв классеWriter - Параметры:
-
csq- Последовательность символов, из которой будет добавлена подпоследовательность. Еслиcsqявляетсяnull, то символы будут добавлены как если быcsqсодержал четыре символа"null". -
start- Индекс первого символа в подпоследовательности -
end- Индекс символа, следующего за последним символом в подпоследовательности - Возвращает:
- Этот поток
- Исключения:
-
IndexOutOfBoundsException- Еслиstartилиendотрицательны,startбольше чемend, илиendбольше чемcsq.length() - С тех пор:
- 1.5
append
public StringWriter append(char c)
Добавляет указанный символ в этот поток.
Вызов этого метода формы out.append(c) ведет себя точно так же, как вызов
out.write(c)
- Указано в:
-
appendв интерфейсеAppendable - Переопределяет:
-
appendв классеWriter - Параметры:
-
c- 16-битный символ для добавления - Возвращает:
- Этот поток
- С тех пор:
- 1.5
toString
public String toString()
Возвращает текущее значение буфера в виде строки.
getBuffer
public StringBuffer getBuffer()
Возвращает сам буфер строк.
- Возвращает:
- StringBuffer, содержащий текущее значение буфера.
flush
public void flush()
Очистить поток.
close
public void close()
throws IOExceptionЗакрытие потока StringWriter не имеет эффекта. Методы в этом классе могут быть вызваны после закрытия потока без генерации исключения IOException.
- Указано в:
-
closeв интерфейсеAutoCloseable - Указано в:
-
closeв интерфейсеCloseable - Указано в:
-
closeв классеWriter - Исключения:
-
IOException- Если произошла ошибка ввода-вывода
© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/StringWriter.html