Класс StringContent
- java.lang.Object
-
- javax.swing.text.StringContent
- Все реализованные интерфейсы:
-
Serializable,AbstractDocument.Content
public final class StringContent extends Object implements AbstractDocument.Content, Serializable
Реализация интерфейса AbstractDocument.Content, представляющая собой прямое (brute force) решение, полезное для относительно небольших документов и/или отладки. Она управляет текстовым содержимым как простым массивом символов. Она также довольно неэффективна.
В целом рекомендуется использовать реализации с буфером разрывов (gap buffer) или таблицей фрагментов (piece table) вместо этой. Этот буфер не масштабируется до больших размеров.
Предупреждение: Сериализованные объекты этого класса не будут совместимы с будущими версиями Swing. Текущая поддержка сериализации подходит для краткосрочного хранения или RMI между приложениями, использующими одну и ту же версию Swing. С версии 1.4 добавлена поддержка долгосрочного хранения всех JavaBeans™ в пакете java.beans. Пожалуйста, обратитесь к XMLEncoder.
- См. также:
- Сериализованная форма
Конструкторы
| Конструктор | Описание |
|---|---|
StringContent() |
Создаёт новый объект StringContent. |
StringContent(int initialLength) |
Создаёт новый объект StringContent с заданным начальным размером. |
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
Position |
createPosition(int offset) |
Создаёт позицию в содержимом, которая будет отслеживать изменения при его изменении. |
void |
getChars(int where,
int len,
Segment chars) |
Возвращает часть содержимого. |
protected Vector |
getPositionsInRange(Vector v,
int offset,
int length) |
Возвращает вектор, содержащий экземпляры UndoPosRef для позиций в диапазоне от |
String |
getString(int where,
int len) |
Возвращает часть содержимого. |
UndoableEdit |
insertString(int where,
String str) |
Вставляет строку в содержимое. |
int |
length() |
Возвращает длину содержимого. |
UndoableEdit |
remove(int where,
int nitems) |
Удаляет часть содержимого. |
protected void |
updateUndoPositions(Vector positions) |
Сбрасывает расположение для всех экземпляров UndoPosRef в |
Методы, унаследованные от класса java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Конструкторы
StringContent
public StringContent()
Создаёт новый объект StringContent. Начальный размер по умолчанию равен 10.
StringContent
public StringContent(int initialLength)
Создаёт новый объект StringContent с заданным начальным размером. Если длина меньше 1, используется размер 1.
- Параметры:
-
initialLength- начальный размер
Методы
length
public int length()
Возвращает длину содержимого.
- Определено в:
-
lengthв интерфейсеAbstractDocument.Content - Возвращает:
- длину >= 1
- См. также:
AbstractDocument.Content.length()
insertString
public UndoableEdit insertString(int where,
String str)
throws BadLocationException
Вставляет строку в содержимое.
- Определено в:
-
insertStringв интерфейсеAbstractDocument.Content - Параметры:
-
where- начальная позиция >= 0 && < length() -
str- непустая строка для вставки - Возвращает:
- объект UndoableEdit для отмены операции
- Исключения:
-
BadLocationException- если указанная позиция недопустима - См. также:
AbstractDocument.Content.insertString(int, java.lang.String)
remove
public UndoableEdit remove(int where,
int nitems)
throws BadLocationException
Удаляет часть содержимого. где + nitems должно быть < length().
- Определено в:
-
removeв интерфейсеAbstractDocument.Content - Параметры:
-
where- начальная позиция >= 0 -
nitems- количество удаляемых символов >= 0 - Возвращает:
- объект UndoableEdit для отмены операции
- Исключения:
-
BadLocationException- если указанная позиция недопустима - См. также:
AbstractDocument.Content.remove(int, int)
getString
public String getString(int where,
int len)
throws BadLocationException
Возвращает часть содержимого. где + len должно быть <= length().
- Определено в:
-
getStringв интерфейсеAbstractDocument.Content - Параметры:
-
where- начальная позиция >= 0 -
len- длина для возврата >= 0 - Возвращает:
- строка, представляющая содержимое; может быть пустой
- Исключения:
-
BadLocationException- если указанная позиция недопустима - См. также:
AbstractDocument.Content.getString(int, int)
getChars
public void getChars(int where,
int len,
Segment chars)
throws BadLocationException
Возвращает часть содержимого. где + len должно быть <= length()
- Определено в:
-
getCharsв интерфейсеAbstractDocument.Content - Параметры:
-
where- начальная позиция >= 0 -
len- количество символов для возврата >= 0 -
chars- объект Segment для возврата символов - Исключения:
-
BadLocationException- если указанная позиция недопустима - См. также:
AbstractDocument.Content.getChars(int, int, javax.swing.text.Segment)
createPosition
public Position createPosition(int offset)
throws BadLocationException
Создаёт позицию в содержимом, которая будет отслеживать изменения при его изменении.
- Определено в:
-
createPositionв интерфейсеAbstractDocument.Content - Параметры:
-
offset- смещение для создания позиции >= 0 - Возвращает:
- позицию
- Исключения:
-
BadLocationException- если указанная позиция недопустима
getPositionsInRange
protected Vector getPositionsInRange(Vector v,
int offset,
int length)
Возвращает вектор, содержащий экземпляры UndoPosRef для позиций в диапазоне от offset до offset + length. Если v не null, соответствующие позиции помещаются в него. Вектор с полученными позициями возвращается.
Этот метод предназначен для внутреннего использования и обычно не интересен подклассам.
- Параметры:
-
v- вектор для использования, создаётся новый при null -
offset- начальное смещение >= 0 -
length- длина >= 0 - Возвращает:
- множество экземпляров
updateUndoPositions
protected void updateUndoPositions(Vector positions)
Сбрасывает расположение для всех экземпляров UndoPosRef в positions.
Этот метод предназначен для внутреннего использования и обычно не интересен подклассам.
- Параметры:
-
positions- позиции экземпляров
© 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.desktop/javax/swing/text/StringContent.html