Класс CoderResult

public class CoderResult
extends Object

Описание состояния результата кодера.

Кодер набора символов, то есть либо декодер, либо кодер, считывает байты (или символы) из входного буфера, преобразует их и записывает полученные символы (или байты) в выходной буфер. Процесс кодирования завершается по одной из четырех причин, которые описываются экземплярами этого класса:

  • Недоток сообщается, когда больше нет входных данных для обработки или недостаточно входных данных, и требуется дополнительный ввод. Это условие представлено уникальным объектом результата UNDERFLOW, метод isUnderflow которого возвращает true.

  • Переполнение сообщается, когда в выходном буфере недостаточно места. Это условие представлено уникальным объектом результата OVERFLOW, метод isOverflow которого возвращает true.

  • Ошибка неправильного входного сообщения сообщается, когда последовательность входных единиц не является корректной. Такие ошибки описываются экземплярами этого класса, чье isMalformed метод возвращает true и метод length возвращает длину некорректной последовательности. Существует один уникальный экземпляр этого класса для всех ошибок некорректного входа заданной длины.

  • Ошибка непреобразуемого символа сообщается, когда последовательность входных единиц обозначает символ, который не может быть представлен в выходном наборе символов. Такие ошибки описываются экземплярами этого класса, чье isUnmappable метод возвращает true и чье length метод возвращает длину входной последовательности, обозначающей непреобразуемый символ. Существует один уникальный экземпляр этого класса для всех ошибок непреобразуемых символов заданной длины.

Для удобства метод isError возвращает true для объектов результата, описывающих ошибки некорректного входного и непреобразуемого символа, но false для тех, которые описывают условия недотока или переполнения.

Since:
1.4

Поля

Модификатор и тип Поле Описание
static CoderResult OVERFLOW

Объект результата, указывающий на переполнение, означающее недостаток места в выходном буфере.

static CoderResult UNDERFLOW

Объект результата, указывающий на недоток, означающий, что либо входной буфер был полностью потреблен, либо, если входной буфер еще не пуст, требуется дополнительный ввод.

Методы

Модификатор и тип Метод Описание
boolean isError()

Указывает, описывает ли этот объект состояние ошибки.

boolean isMalformed()

Указывает, описывает ли этот объект ошибку некорректного входного значения.

boolean isOverflow()

Указывает, описывает ли этот объект состояние переполнения.

boolean isUnderflow()

Указывает, описывает ли этот объект состояние недотока.

boolean isUnmappable()

Указывает, описывает ли этот объект ошибку непреобразуемого символа.

int length()

Возвращает длину ошибочного входного значения, описанного этим объектом (дополнительная операция).

static CoderResult malformedForLength​(int length)

Статический фабричный метод, который возвращает уникальный объект, описывающий ошибку некорректного входа заданной длины.

void throwException()

Выбрасывает исключение, соответствующее результату, описанному этим объектом.

String toString()

Возвращает строку, описывающую этот результат кодирования.

static CoderResult unmappableForLength​(int length)

Статический фабричный метод, который возвращает уникальный объект результата, описывающий ошибку непреобразуемого символа заданной длины.

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

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

Поля

UNDERFLOW

public static final CoderResult UNDERFLOW

Объект результата, указывающий на недоток, означающий, что либо входной буфер был полностью потреблен, либо, если входной буфер еще не пуст, требуется дополнительный ввод.

OVERFLOW

public static final CoderResult OVERFLOW

Объект результата, указывающий на переполнение, означающее недостаток места в выходном буфере.

Методы

toString

public String toString()

Возвращает строку, описывающую этот результат кодирования.

Overrides:
toString в классе Object
Возвращает:
Строка описания

isUnderflow

public boolean isUnderflow()

Указывает, описывает ли этот объект состояние недотока.

Возвращает:
true если и только если этот объект обозначает недоток

isOverflow

public boolean isOverflow()

Указывает, описывает ли этот объект состояние переполнения.

Возвращает:
true если и только если этот объект обозначает переполнение

isError

public boolean isError()

Указывает, описывает ли этот объект состояние ошибки.

Возвращает:
true если и только если этот объект обозначает ошибку некорректного входного или непреобразуемого символа

isMalformed

public boolean isMalformed()

Указывает, описывает ли этот объект ошибку некорректного входного значения.

Возвращает:
true если и только если этот объект обозначает ошибку некорректного входного значения

isUnmappable

public boolean isUnmappable()

Указывает, описывает ли этот объект ошибку непреобразуемого символа.

Возвращает:
true если и только если этот объект обозначает ошибку непреобразуемого символа

length

public int length()

Возвращает длину ошибочного входного значения, описанного этим объектом (дополнительная операция).

Возвращает:
Длина ошибочного входного значения, положительное целое число
Выбрасывает:
UnsupportedOperationException - Если этот объект не описывает состояние ошибки, то есть если isError не возвращает true

malformedForLength

public static CoderResult malformedForLength(int length)

Статический фабричный метод, который возвращает уникальный объект, описывающий ошибку некорректного входа заданной длины.

Параметры:
length - Заданная длина
Возвращает:
Запрошенный объект результата кодирования

unmappableForLength

public static CoderResult unmappableForLength(int length)

Статический фабричный метод, который возвращает уникальный объект результата, описывающий ошибку непреобразуемого символа заданной длины.

Параметры:
length - Заданная длина
Возвращает:
Запрошенный объект результата кодирования

throwException

public void throwException()
                    throws CharacterCodingException

Выбрасывает исключение, соответствующее результату, описанному этим объектом.

Выбрасывает:
BufferUnderflowException - Если этот объект является UNDERFLOW
BufferOverflowException - Если этот объект является OVERFLOW
MalformedInputException - Если этот объект представляет ошибку некорректного входного значения; значение длины исключения будет равно значению длины этого объекта
UnmappableCharacterException - Если этот объект представляет ошибку непреобразуемого символа; значение длины исключения будет равно значению длины этого объекта
CharacterCodingException

© 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/nio/charset/CoderResult.html

Spec-Zone .ru
спецификации, руководства, описания, API