CharsetEncoder.EncodeLoop(CharBuffer, ByteBuffer) 方法

定义

将一个或多个字符编码为一个或多个字节。

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

参数

in
CharBuffer

输入字符缓冲区

out
ByteBuffer

输出字节缓冲区

返回

描述终止原因的编码器结果对象

属性

注解

将一个或多个字符编码为一个或多个字节。

此方法封装基本编码循环,编码尽可能多的字符,直到它耗尽输入,耗尽输出缓冲区中的空间,或遇到编码错误。 此方法由 #encode encode 该方法调用,该方法处理结果解释和错误恢复。

从缓冲区当前位置开始读取缓冲区并写入缓冲区。 最多 Buffer#remaining in.remaining() 将读取字符,最多 Buffer#remaining out.remaining() 写入字节数。 缓冲区的位置将进行高级,以反映读取的字符和写入的字节,但不会修改它们的标记和限制。

此方法返回一个 CoderResult 对象,以与方法相同的方式 #encode encode 描述其终止原因。 此方法的大多数实现将通过返回适当的结果对象来处理编码错误,以便由 #encode encode 该方法解释。 相反,优化实现可以检查相关的错误操作并实现该操作本身。

此方法的实现可以通过返回 CoderResult#UNDERFLOW 来执行任意查找,直到收到足够的输入。

适用于 . 的 java.nio.charset.CharsetEncoder.encodeLoop(java.nio.CharBuffer, java.nio.ByteBuffer)Java 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

适用于