IStreamMessage
流消息是消息主体由一连串值组成的消息,其中每个值都有关联的数据类型。 将按顺序读写主体的内容。
- 继承层次结构:
IBM.XMS.IPropertyContext | +----IBM.XMS.IMessage | +----IBM.XMS.IStreamMessage
当应用程序从消息流中读取值时, XMS 可以将该值转换为其他数据类型。 有关此形式的隐式转换的更多信息,请参阅 XMS 消息的主体。
方法
- 方法汇总:
方法 描述 ReadBoolean 从消息流中读取布尔值。 ReadByte 从消息流中读取有符号的 8 位整数。 ReadBytes 从消息流中读取字节数组。 ReadChar 从消息流中读取 2 字节字符。 ReadDouble 从消息流中读取 8 字节双精度浮点数。 ReadFloat 从消息流中读取 4 字节浮点数。 ReadInt 从消息流中读取有符号的 32 位整数。 ReadLong 从消息流中读取有符号的 64 位整数。 ReadObject 从消息流中读取值并返回其数据类型。 ReadShort 从消息流中读取有符号的 16 位整数。 ReadString 从消息流中读取字符串。 重置 将消息主体置于只读方式,并将光标重新定位在消息流的开始位置。 WriteBoolean 将布尔值写入消息流中。 WriteByte 将一个字节写入消息流中。 WriteBytes 将字节数组写入消息流中。 WriteChar 将一个字符作为 2 个字节(首先是高位字节)写入消息流中。 WriteDouble 将双精度浮点数转换为长整数,并将此长整数作为 8 个字节(首先是高位字节)写入消息流中。 WriteFloat 将浮点数转换为整数,并将此整数作为 4 个字节(首先是高位字节)写入消息流中。 WriteInt 将整数作为 4 个字节(首先是高位字节)写入消息流中。 WriteLong 将长整数作为 8 个字节(首先是高位字节)写入消息流中。 WriteObject 将指定数据类型的值写入消息流中。 WriteShort 将短整数作为 2 个字节(首先是高位字节)写入消息流中。 WriteString 将字符串写入消息流中。
ReadBoolean - 读取布尔值
- 接口:
Boolean ReadBoolean();
从消息流中读取布尔值。
- 参数:
- None
- 返回:
- 读取的布尔值。
- 异常:
- XMSException
- MessageNotReadableException
- MessageEOFException
ReadByte - 读取单个字节
- 接口:
Int16 ReadSignedByte(); Byte ReadByte();
从消息流中读取有符号的 8 位整数。
- 参数:
- None
- 返回:
- 读取的字节。
- 异常:
- XMSException
- MessageNotReadableException
- MessageEOFException
ReadBytes - 读取多个字节
- 接口:
Int32 ReadBytes(Byte[] array);
从消息流中读取字节数组。
- 参数:
- array(输入)
- 包含所读取的字节数组和缓冲区长度(以字节计)的缓冲区。
如果数组中的字节数小于或等于缓冲区长度,那么会将整个数组读入到缓冲区中。 如果数组中的字节数大于缓冲区长度,那么会用数组的部分内容填满缓冲区,并且内部光标会标记要读取的下一个字节的位置。 随后的一个 readBytes() 调用会从光标当前位置开始读取数组中的字节。
如果在输入上指定空指针,那么此调用将跳过字节数组,而不读取该数组。
- 返回:
- 读入到缓冲区的字节数。 如果部分填充缓冲区,那么该值小于缓冲区长度,这表明不存在待读取的剩余字节。 如果在调用前数组中不存在待读取的剩余字节,那么该值为
XMSC_END_OF_BYTEARRAY。如果在输入上指定空指针,那么此方法不返回任何值。
- 异常:
- XMSException
- MessageNotReadableException
- MessageEOFException
ReadChar - 读取字符
- 接口:
Char ReadChar();
从消息流中读取 2 字节字符。
- 参数:
- None
- 返回:
- 读取的字符。
- 异常:
- XMSException
- MessageNotReadableException
- MessageEOFException
ReadDouble - 读取双精度浮点数
- 接口:
Double ReadDouble();
从消息流中读取 8 字节双精度浮点数。
- 参数:
- None
- 返回:
- 读取的双精度浮点数。
- 异常:
- XMSException
- MessageNotReadableException
- MessageEOFException
ReadFloat - 读取浮点数
- 接口:
Single ReadFloat();
从消息流中读取 4 字节浮点数。
- 参数:
- None
- 返回:
- 读取的浮点数。
- 异常:
- XMSException
- MessageNotReadableException
- MessageEOFException
ReadInt - 读取整数
- 接口:
Int32 ReadInt();
从消息流中读取有符号的 32 位整数。
- 参数:
- None
- 返回:
- 读取的整数。
- 异常:
- XMSException
- MessageNotReadableException
- MessageEOFException
ReadLong - 读取长整数
- 接口:
Int64 ReadLong();
从消息流中读取有符号的 64 位整数。
- 参数:
- None
- 返回:
- 读取的长整数。
- 异常:
- XMSException
- MessageNotReadableException
- MessageEOFException
ReadObject - 读取对象
- 接口:
Object ReadObject();
从消息流中读取值并返回其数据类型。
- 参数:
- None
- 返回:
- 以下某种对象类型的值:
BooleanByteByte[]CharDoubleSingleInt32Int64Int16String
- 异常:
- XMSException
ReadShort - 读取短整数
- 接口:
Int16 ReadShort();
从消息流中读取有符号的 16 位整数。
- 参数:
- None
- 返回:
- 读取的短整数。
- 异常:
- XMSException
- MessageNotReadableException
- MessageEOFException
ReadString - 读取字符串
- 接口:
String ReadString();
从消息流中读取字符串。 如果需要, XMS 会将字符串中的字符转换为本地代码页。
- 参数:
- None
- 返回:
- 用于封装读取的字符串的 String 对象。 如果需要进行数据转换,那么该值是转换后的字符串。
- 异常:
- XMSException
- MessageNotReadableException
- MessageEOFException
Reset - 重置
- 接口:
void Reset();
将消息主体置于只读方式,并将光标重新定位在消息流的开始位置。
- 参数:
- None
- 返回:
- Void
- 异常:
- XMSException
- MessageNotReadableException
- MessageEOFException
WriteBoolean - 写入布尔值
- 接口:
void WriteBoolean(Boolean value);
将布尔值写入消息流中。
- 参数:
- value(输入)
- 要写入的布尔值。
- 返回:
- Void
- 异常:
- XMSException
- MessageNotWritableException
WriteByte - 写入单个字节
- 接口:
void WriteByte(Byte value); void WriteSignedByte(Int16 value);
将一个字节写入消息流中。
- 参数:
- value(输入)
- 要写入的字节。
- 返回:
- Void
- 异常:
- XMSException
- MessageNotWritableException
WriteBytes - 写入多个字节
- 接口:
void WriteBytes(Byte[] value);
将字节数组写入消息流中。
- 参数:
- value(输入)
- 要写入的字节数组。
- length(输入)
- 数组中的字节数。
- 返回:
- Void
- 异常:
- XMSException
- MessageNotWritableException
WriteChar - 写入字符
- 接口:
void WriteChar(Char value);
将一个字符作为 2 个字节(首先是高位字节)写入消息流中。
- 参数:
- value(输入)
- 要写入的字符。
- 返回:
- Void
- 异常:
- XMSException
- MessageNotWritableException
WriteDouble - 写入双精度浮点数
- 接口:
void WriteDouble(Double value);
将双精度浮点数转换为长整数,并将此长整数作为 8 个字节(首先是高位字节)写入消息流中。
- 参数:
- value(输入)
- 要写入的双精度浮点数。
- 返回:
- Void
- 异常:
- XMSException
- MessageNotWritableException
WriteFloat - 写入浮点数
- 接口:
void WriteFloat(Single value);
将浮点数转换为整数,并将此整数作为 4 个字节(首先是高位字节)写入消息流中。
- 参数:
- value(输入)
- 要写入的浮点数。
- 返回:
- Void
- 异常:
- XMSException
- MessageNotWritableException
WriteInt - 写入整数
- 接口:
void WriteInt(Int32 value);
将整数作为 4 个字节(首先是高位字节)写入消息流中。
- 参数:
- value(输入)
- 要写入的整数。
- 返回:
- Void
- 异常:
- XMSException
- MessageNotWritableException
WriteLong - 写入长整数
- 接口:
void WriteLong(Int64 value);
将长整数作为 8 个字节(首先是高位字节)写入消息流中。
- 参数:
- value(输入)
- 要写入的长整数。
- 返回:
- Void
- 异常:
- XMSException
- MessageNotWritableException
WriteObject - 写入对象
- 接口:
void WriteObject(Object value);
将指定数据类型的值写入消息流中。
- 参数:
- objectType(输入)
- 以下某种对象类型的值:
BooleanByteByte[]CharDoubleSingleInt32Int64Int16String
- value(输入)
- 包含要写入的值的字节数组。
- length(输入)
- 数组中的字节数。
- 返回:
- Void
- 异常:
- XMSException
WriteShort - 写入短整数
- 接口:
void WriteShort(Int16 value);
将短整数作为 2 个字节(首先是高位字节)写入消息流中。
- 参数:
- value(输入)
- 要写入的短整数。
- 返回:
- Void
- 异常:
- XMSException
- MessageNotWritableException
WriteString - 写入字符串
- 接口:
void WriteString(String value);
将字符串写入消息流中。
- 参数:
- value(输入)
- 用于封装待写入字符串的 String 对象。
- 返回:
- Void
- 异常:
- XMSException
- MessageNotWritableException
继承的属性和方法
- GetBooleanProperty、GetByteProperty、GetBytesProperty、GetCharProperty、GetDoubleProperty、GetFloatProperty、GetIntProperty、GetLongProperty、GetObjectProperty、GetShortProperty、GetStringProperty、SetBooleanProperty、SetByteProperty、SetBytesProperty、SetCharProperty、SetDoubleProperty、SetFloatProperty、SetIntProperty、SetLongProperty、SetObjectProperty、SetShortProperty、SetStringProperty