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
返回:
以下某种对象类型的值:
  • Boolean
  • Byte
  • Byte[]
  • Char
  • Double
  • Single
  • Int32
  • Int64
  • Int16
  • String
异常:
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(输入)
以下某种对象类型的值:
  • Boolean
  • Byte
  • Byte[]
  • Char
  • Double
  • Single
  • Int32
  • Int64
  • Int16
  • String
value(输入)
包含要写入的值的字节数组。
length(输入)
数组中的字节数。
返回:
Void
异常:
  • XMSException

WriteShort - 写入短整数

接口:
void  WriteShort(Int16 value);

将短整数作为 2 个字节(首先是高位字节)写入消息流中。

参数:
value(输入)
要写入的短整数。
返回:
Void
异常:
  • XMSException
  • MessageNotWritableException

WriteString - 写入字符串

接口:
void  WriteString(String value);

将字符串写入消息流中。

参数:
value(输入)
用于封装待写入字符串的 String 对象。
返回:
Void
异常:
  • XMSException
  • MessageNotWritableException

继承的属性和方法