CharsetEncoder Класс

Определение

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

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

Комментарии

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

"steps">

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

<Пр>

<Литий>

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

</Литий>

<Литий>

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

</Литий>

<Литий>

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

</Литий>

<Литий>

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

</Литий>

</Пр>

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

"ce">

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

"cae">

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

изначально устанавливается на замену кодировщика по умолчанию, которая часто (но не всегда) имеет начальное значение { (byte)'?' };

его значение можно изменить с помощью #replaceWith(byte[]) replaceWith метода .

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

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

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

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

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

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

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

CharsetEncoder(Charset, Single, Single)

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

CharsetEncoder(Charset, Single, Single, Byte[])

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

CharsetEncoder(IntPtr, JniHandleOwnership)

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

Свойства

Class

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

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

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

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

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

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

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

PeerReference

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

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

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

ThresholdType

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

Методы

AverageBytesPerChar()

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

CanEncode(Char)

Указывает, может ли кодировщик кодировать данный символ.

CanEncode(ICharSequence)

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

CanEncode(String)

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

Charset()

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

Clone()

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

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

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

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

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

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

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

Encode(CharBuffer, ByteBuffer, Boolean)

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

EncodeLoop(CharBuffer, ByteBuffer)

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

Equals(Object)

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

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

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

GetHashCode()

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

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

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

ImplOnMalformedInput(CodingErrorAction)

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

ImplOnUnmappableCharacter(CodingErrorAction)

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

ImplReplaceWith(Byte[])

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

ImplReset()

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

IsLegalReplacement(Byte[])

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

JavaFinalize()

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

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

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

MaxBytesPerChar()

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

Notify()

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

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

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

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

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

OnUnmappableCharacter(CodingErrorAction)

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

Replacement()

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

ReplaceWith(Byte[])

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

Reset()

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

SetHandle(IntPtr, JniHandleOwnership)

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

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

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

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

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

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

Возвращает текущее действие этого кодировщика для ошибок unmappable-character.

UnregisterFromRuntime()

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

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

Заставляет текущий поток ждать, пока он не будет пробужден, как правило, из-за <уведомления/><em> или <прерывания></em>.

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

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

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

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

(Унаследовано от 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)

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

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