Spec-Zone.ru › OpenJDK 21

Класс AbstractWriter

java.lang.Object
javax.swing.text.AbstractWriter
Прямые известные подклассы:
HTMLWriter, MinimalHTMLWriter
public abstract class AbstractWriter extends Object
Класс AbstractWriter — абстрактный класс, который фактически выполняет работу по выводу дерева элементов, включая атрибуты. По умолчанию, вывод осуществляется по 100 символов в строке, но это значение может быть изменено подклассами.

Краткое описание полей

Модификатор и тип Поле Описание
protected static final char NEWLINE
Как текстовые пакеты моделируют новые строки.

Краткое описание конструкторов

AbstractWriter(Writer w, Document doc)
AbstractWriter(Writer w, Document doc, int pos, int len)
AbstractWriter(Writer w, Element root)
AbstractWriter(Writer w, Element root, int pos, int len)
Модификатор Конструктор Описание
protected
Создаёт новый AbstractWriter.
protected
Создаёт новый AbstractWriter.
protected
Создаёт новый AbstractWriter.
protected
Создаёт новый AbstractWriter.

Краткое описание методов

Модификатор и тип Метод Описание
protected void decrIndent()
Уменьшает уровень отступа.
protected boolean getCanWrapLines()
Возвращает, можно ли переносить строки.
protected int getCurrentLineLength()
Возвращает текущую длину строки.
protected Document getDocument()
Возвращает документ.
protected ElementIterator getElementIterator()
Возвращает итератор элементов.
int getEndOffset()
Возвращает последний смещение для вывода.
protected int getIndentLevel()
Возвращает текущий уровень отступа.
protected int getIndentSpace()
Возвращает величину отступа.
protected int getLineLength()
Возвращает максимальную длину строки.
String getLineSeparator()
Возвращает строку, используемую для представления новых строк.
int getStartOffset()
Возвращает первое смещение для вывода.
protected String getText(Element elem)
Возвращает текст, связанный с элементом.
protected Writer getWriter()
Возвращает Writer, используемый для вывода содержимого.
protected void incrIndent()
Увеличивает уровень отступа.
protected void indent()
Выполняет отступ.
protected boolean inRange(Element next)
Этот метод определяет, находится ли текущий элемент в указанном диапазоне.
protected boolean isLineEmpty()
Возвращает true, если текущая строка должна считаться пустой.
protected void output(char[] content, int start, int length)
Последний этап вывода содержимого.
protected void setCanWrapLines(boolean newValue)
Устанавливает возможность переноса строк.
protected void setCurrentLineLength(int length)
Устанавливает текущую длину строки.
protected void setIndentSpace(int space)
Позволяет подклассам указать, сколько пробелов соответствует отступу.
protected void setLineLength(int l)
Позволяет подклассам установить количество символов на строку.
void setLineSeparator(String value)
Устанавливает строку для представления новых строк.
protected void text(Element elem)
Выводит текст.
protected abstract void write()
Этот абстрактный метод должен быть реализован подклассами.
protected void write(char ch)
Выводит символ.
protected void write(char[] chars, int startIndex, int length)
Все методы вывода используют этот метод.
protected void write(String content)
Выводит строку.
protected void writeAttributes(AttributeSet attr)
Выводит атрибуты в виде пар "имя=значение".
protected void writeLineSeparator()
Выводит разделитель строк.

Методы, унаследованные от класса java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Подробное описание полей

NEWLINE

protected static final char NEWLINE
Как текстовые пакеты моделируют новые строки.
См. также:
  • getLineSeparator()
  • Значения константных полей

Подробное описание конструкторов

AbstractWriter

protected AbstractWriter(Writer w, Document doc)
Создаёт новый AbstractWriter. Инициализирует ElementIterator с корнем документа по умолчанию.
Параметры:
w - объект Writer.
doc - объект Document

AbstractWriter

protected AbstractWriter(Writer w, Document doc, int pos, int len)
Создаёт новый AbstractWriter. Инициализирует ElementIterator с переданным элементом.
Параметры:
w - объект Writer
doc - элемент
pos - Позиция в документе для извлечения содержимого.
len - Количество для записи.

AbstractWriter

protected AbstractWriter(Writer w, Element root)
Создаёт новый AbstractWriter. Инициализирует ElementIterator с переданным элементом.
Параметры:
w - объект Writer
root - элемент

AbstractWriter

protected AbstractWriter(Writer w, Element root, int pos, int len)
Создаёт новый AbstractWriter. Инициализирует ElementIterator с переданным элементом.
Параметры:
w - объект Writer
root - элемент
pos - Позиция в документе для извлечения содержимого.
len - Количество для записи.

Подробное описание методов

getStartOffset

public int getStartOffset()
Возвращает начальную позицию для вывода.
Возвращает:
начальную позицию для вывода
С момента:
1.3

getEndOffset

public int getEndOffset()
Возвращает конечную позицию для вывода.
Возвращает:
конечную позицию для вывода
С момента:
1.3

getElementIterator

protected ElementIterator getElementIterator()
Получает ElementIterator.
Возвращает:
ElementIterator.

getWriter

protected Writer getWriter()
Возвращает объект Writer, используемый для вывода содержимого.
Возвращает:
объект Writer, используемый для вывода содержимого
С момента:
1.3

getDocument

protected Document getDocument()
Получает документ.
Возвращает:
объект Document.

inRange

protected boolean inRange(Element next)
Этот метод определяет, находится ли текущий элемент в указанном диапазоне. Если диапазон не указан, он инициализируется для всего документа. inRange() возвращает true, если указанный диапазон пересекается с диапазоном элемента.
Параметры:
next - элемент.
Возвращает:
булево значение, указывающее, находится ли элемент в диапазоне.

write

protected abstract void write() throws IOException, BadLocationException
Этот абстрактный метод должен быть реализован подклассами. Его задача — итерироваться по элементам и использовать методы write() для генерации вывода в нужном формате.
Исключения:
IOException - если произошла проблема с вводом/выводом
BadLocationException - для неверной позиции в документе

getText

protected String getText(Element elem) throws BadLocationException
Возвращает текст, связанный с элементом. Предполагается, что элемент является листовым элементом. Бросает BadLocationException при обнаружении.
Параметры:
elem - элемент
Возвращает:
текст как строку
Исключения:
BadLocationException - если pos представляет недопустимую позицию в документе

text

protected void text(Element elem) throws BadLocationException, IOException
Записывает текст. Если диапазон указан при вызове конструктора, записывается только соответствующий диапазон текста.
Параметры:
elem - элемент.
Исключения:
IOException - при любой ошибке ввода/вывода
BadLocationException - если pos представляет недействительную позицию в документе.

setLineLength

protected void setLineLength(int l)
Позволяет подклассам задать количество символов, которые они хотят записывать в строке. По умолчанию 100.
Параметры:
l - максимальная длина строки.

getLineLength

protected int getLineLength()
Возвращает максимальную длину строки.
Возвращает:
максимальную длину строки
С момента:
1.3

setCurrentLineLength

protected void setCurrentLineLength(int length)
Устанавливает текущую длину строки.
Параметры:
length - новая длина строки
С момента:
1.3

getCurrentLineLength

protected int getCurrentLineLength()
Возвращает текущую длину строки.
Возвращает:
текущую длину строки
С момента:
1.3

isLineEmpty

protected boolean isLineEmpty()
Возвращает true, если текущую строку следует считать пустой. Это верно, когда getCurrentLineLength == 0 или indent был вызван в пустой строке.
Возвращает:
true, если текущая строка должна считаться пустой
С момента:
1.3

setCanWrapLines

protected void setCanWrapLines(boolean newValue)
Устанавливает, разрешено ли переносить строки. Это можно переключать во время записи строк. Например, при выводе HTML это может быть установлено в false при выводе строки с кавычками.
Параметры:
newValue - новое значение для переноса строк
С момента:
1.3

getCanWrapLines

protected boolean getCanWrapLines()
Возвращает, разрешено ли переносить строки. Если это false, lineSeparator не выводится.
Возвращает:
разрешено ли переносить строки
С момента:
1.3

setIndentSpace

protected void setIndentSpace(int space)
Позволяет подклассам указать, сколько пробелов соответствует отступу. При отступе уровень отступа умножается на это значение. По умолчанию 2.
Параметры:
space - целое число, представляющее отображение пробела для отступа.

getIndentSpace

protected int getIndentSpace()
Возвращает количество пробелов для отступа.
Возвращает:
количество пробелов для отступа
С момента:
1.3

setLineSeparator

public void setLineSeparator(String value)
Устанавливает строку, используемую для представления новых строк. Инициализируется в конструкторе из документа или системной переменной line.separator.
Параметры:
value - новая разделитель строк
С момента:
1.3

getLineSeparator

public String getLineSeparator()
Возвращает строку, используемую для представления новых строк.
Возвращает:
строку, используемую для представления новых строк
С момента:
1.3

incrIndent

protected void incrIndent()
Увеличивает уровень отступа. Если отступ приведет к тому, что getIndentSpace() *getIndentLevel() будет больше, чем getLineLength(), отступ не будет выполнен.

decrIndent

protected void decrIndent()
Уменьшает уровень отступа.

getIndentLevel

protected int getIndentLevel()
Возвращает текущий уровень отступа. То есть количество вызовов incrIndent минус количество вызовов decrIndent.
Возвращает:
текущий уровень отступа
С момента:
1.3

indent

protected void indent() throws IOException
Выполняет отступ. Количество записанных пробелов равно уровню отступа умноженному на значение отображения пробела для отступа. Если текущая строка пустая, это не сделает её пустой.
Исключения:
IOException - при любой ошибке ввода/вывода

write

protected void write(char ch) throws IOException
Записывает символ. Это реализовано для вызова метода write, принимающего char[].
Параметры:
ch - символ.
Исключения:
IOException - при любой ошибке ввода/вывода

write

protected void write(String content) throws IOException
Выводит строку. Реализовано для вызова метода write, принимающего массив char[].
Parameters:
content - строка.
Throws:
IOException - при любой ошибке ввода-вывода

writeLineSeparator

protected void writeLineSeparator() throws IOException
Выводит разделитель строк. Вызывает output напрямую, а также устанавливает lineLength в 0.
Throws:
IOException - при любой ошибке ввода-вывода
Since:
1.3

write

protected void write(char[] chars, int startIndex, int length) throws IOException
Все методы write вызывают этот метод. Если getCanWrapLines() возвращает false, это вызовет output для каждой последовательности chars, не содержащей NEWLINE, а затем вызовет writeLineSeparator. С другой стороны, если getCanWrapLines() возвращает true, эта строка будет разделена по мере необходимости, чтобы обеспечить getLineLength. Единственное исключение — если текущая строка не содержит пробелов и не помещается, в этом случае длина строки превысит getLineLength.
Parameters:
chars - символы для вывода
startIndex - индекс начала
length - длина вывода
Throws:
IOException - при любой ошибке ввода-вывода
Since:
1.3

writeAttributes

protected void writeAttributes(AttributeSet attr) throws IOException
Выводит набор атрибутов в виде пар «<имя>=<значение>». При обнаружении ошибки выбрасывает IOException.
Parameters:
attr - набор атрибутов.
Throws:
IOException - при любой ошибке ввода-вывода

output

protected void output(char[] content, int start, int length) throws IOException
Последняя точка записи содержимого. Все методы write в конечном итоге приводят к этому методу, который вызывает write на Writer.

Этот метод также обновляет длину строки на основе length. Если этот метод вызывается для вывода новой строки, текущая длина строки должна быть сброшена, так как она больше не будет действительной. Если это необходимо, вызывающий должен сделать это сам. Используйте writeLineSeparator, чтобы вывести новую строку, что надлежащим образом обновит текущую длину строки.

Parameters:
content - символы для вывода
start - индекс начала
length - длина вывода
Throws:
IOException - при любой ошибке ввода-вывода
Since:
1.3

© 1993, 2023, 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/21/docs/api/java.desktop/javax/swing/text/AbstractWriter.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API