Класс CharArrayWriter
- java.lang.Object
-
- java.io.Writer
-
- java.io.CharArrayWriter
- Все реализованные интерфейсы:
-
Closeable,Flushable,Appendable,AutoCloseable
public class CharArrayWriter extends Writer
Этот класс реализует буфер символов, который может быть использован как Writer. Буфер автоматически увеличивается при записи данных в поток. Данные можно получить, используя методы toCharArray() и toString().
Примечание: Вызов close() для этого класса не оказывает никакого эффекта, и методы этого класса могут быть вызваны после закрытия потока без генерации IOException.
- С тех пор:
- 1.1
Поля
| Модификатор и тип | Поле | Описание |
|---|---|---|
protected char[] | buf | Буфер, где хранятся данные. |
protected int | count | Количество символов в буфере. |
Поля, объявленные в классе java.io.Writer
lock Конструкторы
| Конструктор | Описание |
|---|---|
CharArrayWriter() | Создаёт новый CharArrayWriter. |
CharArrayWriter(int initialSize) | Создаёт новый CharArrayWriter с заданным начальным размером. |
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
CharArrayWriter | append(char c) | Добавляет указанный символ в этот writer. |
CharArrayWriter | append(CharSequence csq) | Добавляет указанную последовательность символов в этот writer. |
CharArrayWriter | append(CharSequence csq,
int start,
int end) | Добавляет подпоследовательность указанной последовательности символов в этот writer. |
void | close() | Закрыть поток. |
void | flush() | Очистить поток. |
void | reset() | Сбрасывает буфер, чтобы можно было использовать его снова, не удаляя уже выделенный буфер. |
int | size() | Возвращает текущий размер буфера. |
char[] | toCharArray() | Возвращает копию входных данных. |
String | toString() | Преобразует входные данные в строку. |
void | write(char[] c,
int off,
int len) | Записывает символы в буфер. |
void | write(int c) | Записывает символ в буфер. |
void | write(String str,
int off,
int len) | Записывает часть строки в буфер. |
void | writeTo(Writer out) | Записывает содержимое буфера в другой поток символов. |
Методы, объявленные в классе java.io.Writer
nullWriter, write, write Методы, объявленные в классе java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait Поля
buf
protected char[] buf
Буфер, в котором хранятся данные.
count
protected int count
Количество символов в буфере.
Конструкторы
CharArrayWriter
public CharArrayWriter()
Создаёт новый CharArrayWriter.
CharArrayWriter
public CharArrayWriter(int initialSize)
Создаёт новый CharArrayWriter с заданным начальным размером.
- Параметры:
-
initialSize- целое число, определяющее начальный размер буфера. - Исключения:
-
IllegalArgumentException- если initialSize отрицательный
Методы
write
public void write(int c)
Записывает символ в буфер.
write
public void write(char[] c,
int off,
int len) Записывает символы в буфер.
- Определено в:
-
writeв классеWriter - Параметры:
-
c- данные для записи -
off- начальный смещение в данных -
len- количество символов, которые записываются - Исключения:
-
IndexOutOfBoundsException- еслиoffотрицательный, илиlenотрицательный, илиoff + lenотрицательный или больше длины заданного массива
write
public void write(String str,
int off,
int len) Записывает часть строки в буфер.
- Переопределяет:
-
writeв классеWriter - Параметры:
-
str- Строка, из которой будут записаны символы -
off- Смещение, с которого начать чтение символов -
len- Количество символов для записи - Исключения:
-
IndexOutOfBoundsException- Еслиoffотрицательный, илиlenотрицательный, илиoff + lenотрицательный или больше длины заданной строки
writeTo
public void writeTo(Writer out)
throws IOException Записывает содержимое буфера в другой поток символов.
- Параметры:
-
out- поток вывода для записи - Исключения:
-
IOException- Если произошла ошибка ввода-вывода.
append
public CharArrayWriter 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 CharArrayWriter 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 CharArrayWriter append(char c)
Добавляет указанный символ к этому записывателю.
Вызов этого метода в форме out.append(c) ведет себя точно так же, как вызов
out.write(c)
- Определено в:
-
appendв интерфейсеAppendable - Переопределяет:
-
appendв классеWriter - Параметры:
-
c- 16-битный символ для добавления - Возвращает:
- Этот записыватель
- С:
- 1.5
reset
public void reset()
Сбрасывает буфер, чтобы вы могли его снова использовать, не удаляя уже выделенный буфер.
toCharArray
public char[] toCharArray()
Возвращает копию входных данных.
- Возвращает:
- массив символов, скопированных из входных данных.
size
public int size()
Возвращает текущий размер буфера.
- Возвращает:
- целое число, представляющее текущий размер буфера.
toString
public String toString()
Преобразует входные данные в строку.
flush
public void flush()
Очистить поток.
close
public void close()
Закрыть поток. Этот метод не освобождает буфер, так как его содержимое может все еще потребоваться. Примечание: Вызов этого метода в этом классе не повлияет.
© 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/CharArrayWriter.html