Поделиться через


CharsetDecoder.DecodeLoop(ByteBuffer, CharBuffer) Метод

Определение

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

[Android.Runtime.Register("decodeLoop", "(Ljava/nio/ByteBuffer;Ljava/nio/CharBuffer;)Ljava/nio/charset/CoderResult;", "GetDecodeLoop_Ljava_nio_ByteBuffer_Ljava_nio_CharBuffer_Handler")]
protected abstract Java.Nio.Charset.CoderResult? DecodeLoop (Java.Nio.ByteBuffer? in, Java.Nio.CharBuffer? out);
[<Android.Runtime.Register("decodeLoop", "(Ljava/nio/ByteBuffer;Ljava/nio/CharBuffer;)Ljava/nio/charset/CoderResult;", "GetDecodeLoop_Ljava_nio_ByteBuffer_Ljava_nio_CharBuffer_Handler")>]
abstract member DecodeLoop : Java.Nio.ByteBuffer * Java.Nio.CharBuffer -> Java.Nio.Charset.CoderResult

Параметры

in
ByteBuffer

Входной буфер байтов

out
CharBuffer

Буфер выходных символов

Возвращаемое значение

Объект coder-result, описывающий причину завершения

Атрибуты

Комментарии

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

Этот метод инкапсулирует базовый цикл декодирования, декодируя как можно больше байтов, пока он не выходит из входных данных, не выходит из места в выходном буфере или обнаруживает ошибку декодирования. Этот метод вызывается методом #decode decode , который обрабатывает интерпретацию результатов и восстановление ошибок.

Буферы считываются и записываются в них, начиная с их текущих позиций. В большинстве Buffer#remaining in.remaining() байтов будет считываться, и в большинстве Buffer#remaining out.remaining() случаев будут записаны символы. Позиции буферов будут расширены для отражения операций чтения и записи символов, но их метки и ограничения не будут изменены.

Этот метод возвращает CoderResult объект, описывающий причину завершения, так же, как #decode decode и метод. Большинство реализаций этого метода будут обрабатывать декодирование ошибок, возвращая соответствующий объект результата для интерпретации методом #decode decode . Оптимизированная реализация может вместо этого проверить соответствующее действие ошибки и реализовать это действие.

Реализация этого метода может выполнять произвольный внешний вид, возвращая CoderResult#UNDERFLOW , пока не получит достаточно входных данных.

Документация по Java для java.nio.charset.CharsetDecoder.decodeLoop(java.nio.ByteBuffer, java.nio.CharBuffer).

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

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