java.lang.Object java.nio.charset.CoderResult
public class CoderResult
coder 结果状态的描述。
charset coder(即解码器或编码器)使用输入缓冲区中的字节(或字符)、对它们进行转换,并将结果字符(或字节)写入输出缓冲区。编码进程终止的原因是以下四类之一,这些原因由此类的实例描述:
当没有更多的输入要处理时,或者当现有的输入不足而需要其他的输入时报告下溢(Underflow)。这种情况用唯一的结果对象 UNDERFLOW
表示,该对象的 isUnderflow
方法返回 true。
当输出缓冲区没有足够的剩余空间时报告溢出(Overflow)。这种情况用唯一的结果对象 OVERFLOW
表示,该对象的 isOverflow
方法返回 true。
当输入单元序列不是格式良好时报告错误的输入错误。这种错误用此类的实例来描述,该类的 isMalformed
方法返回 true,该类的 length
方法返回错误序列的长度。对所有的给定长度的错误输入错误,有此类的一个唯一实例描述。
当表示一个字符的输入单元序列不能在输出 charset 中表示时报告不可映射的字符错误。这种错误用此类的实例描述,该类的 isUnmappable
方法返回 true,该类的 length
方法返回表示不可映射的字符的输入序列的长度。对所有的给定长度的不可映射的字符错误,有此类的一个唯一实例描述。
isError
方法为描述错误输入和不可映射的字符错误的结果对象返回
true,但是为那些描述下溢或溢出情况的结果对象返回
false。
字段摘要 | |
---|---|
static CoderResult |
OVERFLOW 指示溢出的结果对象,意味着输出缓冲区没有足够的空间。 |
static CoderResult |
UNDERFLOW 指示下溢的结果对象,意味着输入缓冲区中的输入被用完,或者如果输入缓冲区不是空的,但还需要其他的输入。 |
方法摘要 | |
---|---|
boolean |
isError() 通知此对象是否描述错误情况。 |
boolean |
isMalformed() 通知此对象是否描述错误输入错误。 |
boolean |
isOverflow() 通知此对象是否描述溢出情况。 |
boolean |
isUnderflow() 通知此对象是否描述下溢情况。 |
boolean |
isUnmappable() 通知此对象是否描述不可映射的字符错误。 |
int |
length() 返回此对象描述的错误输入的长度(可选操作)。 |
static CoderResult |
malformedForLength(int length) 静态工厂方法,返回描述给定长度的错误输入错误的唯一对象。 |
void |
throwException() 抛出相应于此对象描述的结果的异常。 |
String |
toString() 返回描述此 CoderResult 的字符串。 |
static CoderResult |
unmappableForLength(int length) 静态工厂方法,返回描述给定长度的不可映射的字符错误的唯一对象。 |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
字段详细信息 |
---|
public static final CoderResult UNDERFLOW
public static final CoderResult OVERFLOW
方法详细信息 |
---|
public String toString()
public boolean isUnderflow()
public boolean isOverflow()
public boolean isError()
public boolean isMalformed()
public boolean isUnmappable()
public int length()
UnsupportedOperationException
- 如果此对象没有描述错误情况,也就是如果
isError
没有返回
true
public static CoderResult malformedForLength(int length)
public static CoderResult unmappableForLength(int length)
public void throwException() throws CharacterCodingException
BufferUnderflowException
- 如果此对象是
UNDERFLOW
BufferOverflowException
- 如果此对象是
OVERFLOW
MalformedInputException
- 如果此对象表示一个错误输入错误;该异常的长度值是此对象的长度值
UnmappableCharacterException
- 如果此对象表示一个不可映射的字符错误;该异常的长度值是此对象的长度值
CharacterCodingException