串流訊息是一種其主體包含一個值串流(其中每一個值都有一個相關聯的資料類型)的訊息。
xms::PropertyContext | +----xms::Message | +----xms::StreamMessage
主體的內容會依序寫入和讀取。
當應用程式從訊息串流中讀取值時,該值可由 XMS 轉換成另一種資料類型。如需這種隱含轉換形式的相關資訊,請參閱串流訊息。
方法 | 說明 |
---|---|
readBoolean | 從訊息串流中讀取 Boolean 值。 |
readByte | 從訊息串流中讀取一個帶正負號的 8 位元整數。 |
readBytes | 從訊息串流中讀取位元組陣列。 |
readChar | 從訊息串流中讀取一個二位元組字元。 |
readDouble | 從訊息串流中讀取一個 8 位元組的倍精準度浮點數。 |
readFloat | 從訊息串流中讀取一個 4 位元組的浮點數。 |
readInt | 從訊息串流中讀取一個帶正負號的 32 位元整數。 |
readLong | 從訊息串流中讀取一個帶正負號的 64 位元整數。 |
readObject | 從訊息串流中讀取一值,並傳回其資料類型。 |
readShort | 從訊息串流中讀取一個帶正負號的 16 位元整數。 |
readString | 從訊息串流中讀取一個字串。 |
reset | 將訊息主體變成唯讀模式, 並將游標重新定位在訊息串流開頭。 |
writeBoolean | 將 Boolean 值寫入訊息串流中。 |
writeByte | 將位元組寫入訊息串流中。 |
writeBytes | 將位元組陣列寫入訊息串流中。 |
writeChar | 將字元當成 2 位元組寫入訊息串流中, 並從次序高的位元組開始。 |
writeDouble | 將倍精準度浮點數轉換成長整數, 並將長整數當成 8 位元組寫入訊息串流中,且從次序高的位元組開始。 |
writeFloat | 將浮點數轉換成整數, 並將整數當成 4 位元組寫入訊息串流中,且從次序高的位元組開始。 |
writeInt | 將整數當成 4 位元組寫入訊息串流中, 並從次序高的位元組開始。 |
writeLong | 將長整數當成 8 位元組寫入訊息串流中, 並從次序高的位元組開始。 |
writeObject | 使用指定的資料類型,將值寫入訊息串流中。 |
writeShort | 將短整數當成 2 位元組寫入訊息串流中, 並從次序高的位元組開始。 |
writeString | 將字串寫入訊息串流中。 |
xmsINT readBytes(xmsSBYTE *buffer, const xmsINT bufferLength, xmsINT *returnedLength) const;
如果陣列中的位元組數小於或等於緩衝區的長度, 則會將整個陣列讀入緩衝區中。如果陣列中的位元組數大於緩衝區長度, 則緩衝區中會填入一部分的陣列, 且內部游標會標出下一個要讀取的位元組位置。後續的 readBytes() 呼叫會從游標現行位置開始讀取陣列中的位元組。
如果您在輸入中指定一個空值指標, 則呼叫會略過位元組陣列而不會讀取。
如果您在輸入中指定一個空值指標, 則方法不會傳回任何值。
xmsOBJECT_TYPE readObject(xmsSBYTE *buffer, const xmsINT bufferLength, xmsINT *actualLength) const;
有關此方法用法的詳細資訊, 請參閱會傳回位元組陣列的 C++ 方法。
如果您在輸入中指定一個空值指標, 則呼叫會略過該值而不會讀取。
xmsVOID writeObject(const xmsOBJECT_TYPE objectType, const xmsSBYTE *value, const xmsINT length);