CharsetDecoder Класс

Определение

Подсистема, которая может преобразовать последовательность байтов в определенной кодировке в последовательность шестнадцати битовых символов Юникода.

[Android.Runtime.Register("java/nio/charset/CharsetDecoder", DoNotGenerateAcw=true)]
public abstract class CharsetDecoder : Java.Lang.Object
[<Android.Runtime.Register("java/nio/charset/CharsetDecoder", DoNotGenerateAcw=true)>]
type CharsetDecoder = class
    inherit Object
Наследование
CharsetDecoder
Атрибуты

Комментарии

Подсистема, которая может преобразовать последовательность байтов в определенной кодировке в последовательность шестнадцати битовых символов Юникода.

"steps">

Входная последовательность байтов предоставляется в байтовом буфере или ряде таких буферов. Выходная последовательность символов записывается в буфер символов или ряд таких буферов. Декодер всегда следует использовать, выполняя следующую последовательность вызовов методов, далее называемую операцией декодирования:

<Пр>

<Литий>

Сбросьте декодер с помощью #reset reset метода , если только он не использовался ранее;

</Литий>

<Литий>

Вызов метода #decode decode ноль или более раз, если могут быть доступны дополнительные входные данные, передавая falseendOfInput аргумент и заполняя входной буфер и сбрасывая выходной буфер между вызовами;

</Литий>

<Литий>

Вызов метода один #decode decode раз в последний раз, передавая trueendOfInput аргумент, а затем

</Литий>

<Литий>

Вызовите #flush flush метод , чтобы декодер мог очистить любое внутреннее состояние в выходном буфере.

</Литий>

</Пр>

Каждый вызов #decode decode метода будет декодировать как можно больше байтов из входного буфера, записывая полученные символы в выходной буфер. Метод #decode decode возвращает, если требуется больше входных данных, если в выходном буфере недостаточно места или когда произошла ошибка декодирования. В каждом случае CoderResult возвращается объект для описания причины завершения. Вызывающий объект может проверить этот объект и заполнить входной буфер, очистить выходной буфер или попытаться восстановиться после ошибки декодирования при необходимости и повторить попытку.

"ce">

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

"cae">

Способ обработки ошибки декодирования зависит от действия, запрошенного для этого типа ошибки, описанной экземпляром CodingErrorAction класса . Возможные действия с ошибками: CodingErrorAction#IGNORE игнорирует ошибочные входные данные, CodingErrorAction#REPORT сообщает об ошибке вызывающей стороне с помощью возвращенного CoderResult объекта или CodingErrorAction#REPLACE заменить ошибочные входные данные текущим значением строки замены. Замена

имеет начальное значение "&#92;uFFFD";

его значение можно изменить с помощью #replaceWith(java.lang.String) replaceWith метода .

Действие по умолчанию для ошибок неправильного ввода и неисправных символов заключается в том, чтобы КодированиеErrorAction#REPORT сообщить о них. Действие ошибки с неправильным форматом ввода может быть изменено с помощью #onMalformedInput(CodingErrorAction) onMalformedInput метода ; действие unmappable-character может быть изменено с помощью #onUnmappableCharacter(CodingErrorAction) onUnmappableCharacter метода .

Этот класс предназначен для обработки многих деталей процесса декодирования, включая реализацию действий с ошибками. Декодер для определенного набора символов, который является конкретным подклассом этого класса, должен реализовывать только абстрактный #decodeLoop decodeLoop метод, который инкапсулирует базовый цикл декодирования. Подкласс, поддерживающий внутреннее состояние, должен дополнительно переопределять методы #implFlush implFlush и #implReset implReset .

Экземпляры этого класса не являются безопасными для использования несколькими параллельными потоками.

Добавлено в версии 1.4.

Документация по Java для java.nio.charset.CharsetDecoder.

Части этой страницы являются изменениями, основанными на работе, созданной и совместно используемой проектом Android и используемой в соответствии с условиями, Creative Commons 2.5 Attribution License.

Конструкторы

CharsetDecoder(Charset, Single, Single)

Инициализирует новый декодер.

CharsetDecoder(IntPtr, JniHandleOwnership)

Конструктор, используемый при создании управляемых представлений объектов JNI; вызывается средой выполнения.

Свойства

Class

Возвращает класс среды выполнения данного объекта Object.

(Унаследовано от Object)
Handle

Дескриптор базового экземпляра Android.

(Унаследовано от Object)
IsAutoDetecting

Указывает, реализует ли этот декодер набор символов с автоматическим обнаружением.

IsCharsetDetected

Указывает, обнаружил ли декодер еще набор символов   (необязательная операция)..

JniIdentityHashCode

Подсистема, которая может преобразовать последовательность байтов в определенной кодировке в последовательность шестнадцати битовых символов Юникода.

(Унаследовано от Object)
JniPeerMembers

Подсистема, которая может преобразовать последовательность байтов в определенной кодировке в последовательность шестнадцати битовых символов Юникода.

PeerReference

Подсистема, которая может преобразовать последовательность байтов в определенной кодировке в последовательность шестнадцати битовых символов Юникода.

(Унаследовано от Object)
ThresholdClass

Этот API поддерживает инфраструктуру Mono для Android и не предназначен для использования непосредственно из кода.

ThresholdType

Этот API поддерживает инфраструктуру Mono для Android и не предназначен для использования непосредственно из кода.

Методы

AverageCharsPerByte()

Возвращает среднее число символов, которые будут созданы для каждого байта входных данных.

Charset()

Возвращает набор символов, создавший этот декодер.

Clone()

Создает и возвращает копию этого объекта.

(Унаследовано от Object)
Decode(ByteBuffer)

Удобный метод, который декодирует оставшееся содержимое одного входного буфера байтов в только что выделенный буфер символов.

Decode(ByteBuffer, CharBuffer, Boolean)

Декодирует как можно больше байтов из заданного входного буфера, записывая результаты в заданный выходной буфер.

DecodeLoop(ByteBuffer, CharBuffer)

Декодирует один или несколько байтов в один или несколько символов.

DetectedCharset()

Извлекает набор символов, обнаруженный этим декодером   (необязательная операция)..

Dispose()

Подсистема, которая может преобразовать последовательность байтов в определенной кодировке в последовательность шестнадцати битовых символов Юникода.

(Унаследовано от Object)
Dispose(Boolean)

Подсистема, которая может преобразовать последовательность байтов в определенной кодировке в последовательность шестнадцати битовых символов Юникода.

(Унаследовано от Object)
Equals(Object)

Указывает, равен ли какой-то другой объект этому объекту.

(Унаследовано от Object)
Flush(CharBuffer)

Очищает этот декодер.

GetHashCode()

Возвращает значение хэш-кода для объекта.

(Унаследовано от Object)
ImplFlush(CharBuffer)

Очищает этот декодер.

ImplOnMalformedInput(CodingErrorAction)

Сообщает об изменении действия ввода с неправильным форматом этого декодера.

ImplOnUnmappableCharacter(CodingErrorAction)

Сообщает об изменении действия этого декодера с неприменимыми символами.

ImplReplaceWith(String)

Сообщает об изменении значения замены этого декодера.

ImplReset()

Сбрасывает этот декодер, очищая все внутренние состояния, относящиеся к кодировке charset.

JavaFinalize()

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

(Унаследовано от Object)
MalformedInputAction()

Возвращает текущее действие декодера для ошибок неправильного формата ввода.

MaxCharsPerByte()

Возвращает максимальное количество символов, которое будет создано для каждого байта входных данных.

Notify()

Пробуждает один поток, ожидающий монитора этого объекта.

(Унаследовано от Object)
NotifyAll()

Пробуждает все потоки, ожидающие на мониторе этого объекта.

(Унаследовано от Object)
OnMalformedInput(CodingErrorAction)

Изменяет действие декодера для ошибок неправильного формата ввода.

OnUnmappableCharacter(CodingErrorAction)

Изменяет действие этого декодера для ошибок, не допускающих применение символов.

Replacement()

Возвращает значение замены этого декодера.

ReplaceWith(String)

Изменяет значение замены этого декодера.

Reset()

Сбрасывает этот декодер, очищая все внутреннее состояние.

SetHandle(IntPtr, JniHandleOwnership)

Задает свойство Handle.

(Унаследовано от Object)
ToArray<T>()

Подсистема, которая может преобразовать последовательность байтов в определенной кодировке в последовательность шестнадцати битовых символов Юникода.

(Унаследовано от Object)
ToString()

Возвращает строковое представление объекта.

(Унаследовано от Object)
UnmappableCharacterAction()

Возвращает текущее действие этого декодера для ошибок, не допускающих применение символов.

UnregisterFromRuntime()

Подсистема, которая может преобразовать последовательность байтов в определенной кодировке в последовательность шестнадцати битовых символов Юникода.

(Унаследовано от Object)
Wait()

Вызывает ожидание текущего потока, пока он не пробудится, как правило, из-за <уведомления><<> или>прерывания или прерывания.><

(Унаследовано от Object)
Wait(Int64)

Вызывает ожидание текущего потока, пока он не пробудится, как правило, путем <уведомления><<> или>прерывания или прерывания<> или до истечения определенного количества реального времени.

(Унаследовано от Object)
Wait(Int64, Int32)

Вызывает ожидание текущего потока, пока он не пробудится, как правило, путем <уведомления><<> или>прерывания или прерывания<> или до истечения определенного количества реального времени.

(Унаследовано от Object)

Явные реализации интерфейса

IJavaPeerable.Disposed()

Подсистема, которая может преобразовать последовательность байтов в определенной кодировке в последовательность шестнадцати битовых символов Юникода.

(Унаследовано от Object)
IJavaPeerable.DisposeUnlessReferenced()

Подсистема, которая может преобразовать последовательность байтов в определенной кодировке в последовательность шестнадцати битовых символов Юникода.

(Унаследовано от Object)
IJavaPeerable.Finalized()

Подсистема, которая может преобразовать последовательность байтов в определенной кодировке в последовательность шестнадцати битовых символов Юникода.

(Унаследовано от Object)
IJavaPeerable.JniManagedPeerState

Подсистема, которая может преобразовать последовательность байтов в определенной кодировке в последовательность шестнадцати битовых символов Юникода.

(Унаследовано от Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Подсистема, которая может преобразовать последовательность байтов в определенной кодировке в последовательность шестнадцати битовых символов Юникода.

(Унаследовано от Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Подсистема, которая может преобразовать последовательность байтов в определенной кодировке в последовательность шестнадцати битовых символов Юникода.

(Унаследовано от Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

Подсистема, которая может преобразовать последовательность байтов в определенной кодировке в последовательность шестнадцати битовых символов Юникода.

(Унаследовано от Object)

Методы расширения

JavaCast<TResult>(IJavaObject)

Выполняет преобразование типа, проверенного средой выполнения Android.

JavaCast<TResult>(IJavaObject)

Подсистема, которая может преобразовать последовательность байтов в определенной кодировке в последовательность шестнадцати битовых символов Юникода.

GetJniTypeName(IJavaPeerable)

Подсистема, которая может преобразовать последовательность байтов в определенной кодировке в последовательность шестнадцати битовых символов Юникода.

Применяется к