Module  java.base
软件包  java.nio.charset

Class CoderResult



  • public class CoderResult
    extends Object
    编码器的结果状态的描述。

    字符集编码器,即解码器或编码器,从输入缓冲器中消耗字节(或字符),将其转换,并将生成的字符(或字节)写入输出缓冲区。 编码过程以四类原因之一终止,这些原因由本类的实例描述:

    • 当没有更多的输入被处理或输入不足,需要额外的输入时,会报告下溢 该条件由唯一的结果对象UNDERFLOW表示 ,其isUnderflow方法返回true

    • 当输出缓冲区中剩余的空间不足时,会报告溢出 此条件由唯一的结果对象OVERFLOW表示 ,其isOverflow方法返回true

    • 当一系列输入单元格式不正确时,会报错格式输入错误 此类错误由该类的实例描述,其isMalformed方法返回true ,其length方法返回畸形序列的长度。 对于给定长度的所有格式错误的输入错误,此类有一个唯一的实例。

    • 当输入单元的序列表示不能在输出字符集中表示的字符时,会报告不可映射的字符错误 此类错误由isUnmappable方法返回true并且其length方法返回表示不可映射字符的输入序列的长度的该类的实例描述。 对于给定长度的所有不可映射字符错误,此类都有一个唯一的实例。

    为了方便起见, isError方法对于描述错误输入和不可映射字符错误的结果对象返回true ,但false对于描述下溢或溢出条件的对象返回true

    从以下版本开始:
    1.4
    • 字段详细信息

      • UNDERFLOW

        public static final CoderResult UNDERFLOW
        指示下溢的结果对象,意味着输入缓冲区已经完全消耗,或者如果输入缓冲区尚未为空,则需要额外的输入。
      • OVERFLOW

        public static final CoderResult OVERFLOW
        指示溢出的结果对象,意味着输出缓冲区空间不足。
    • 方法详细信息

      • toString

        public String toString​()
        返回描述此编码器结果的字符串。
        重写:
        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 - 给定的长度
        结果
        请求的编码器结果对象