PipeStream.Write 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
多載
Write(ReadOnlySpan<Byte>) |
將位元組序列寫入至目前的資料流,並依寫入的位元組數將資料流中目前的位置往前移。 |
Write(Byte[], Int32, Int32) |
使用緩衝區的資料,將位元組區塊寫入目前的資料流。 |
Write(ReadOnlySpan<Byte>)
將位元組序列寫入至目前的資料流,並依寫入的位元組數將資料流中目前的位置往前移。
public:
override void Write(ReadOnlySpan<System::Byte> buffer);
public override void Write (ReadOnlySpan<byte> buffer);
override this.Write : ReadOnlySpan<byte> -> unit
Public Overrides Sub Write (buffer As ReadOnlySpan(Of Byte))
參數
- buffer
- ReadOnlySpan<Byte>
記憶體區域。 這個方法會將此區域內容複製到目前的資料流。
例外狀況
資料流不支援寫入。
無法存取關閉的管道。
管道已中斷。
管道尚未連接。
-或-
管道處於中斷連接狀態。
-或-
尚未設定管道控制代碼。 (您的 PipeStream 實作是否呼叫 InitializeHandle(SafePipeHandle, Boolean, Boolean)?
備註
CanWrite使用屬性來判斷目前實例是否支援寫入。 WriteAsync使用方法,以異步方式寫入目前的數據流。
如果寫入作業成功,數據流內的位置會依寫入的位元元組數目前進。 如果發生例外狀況,數據流內的位置會保持不變。
適用於
Write(Byte[], Int32, Int32)
使用緩衝區的資料,將位元組區塊寫入目前的資料流。
public:
override void Write(cli::array <System::Byte> ^ buffer, int offset, int count);
public override void Write (byte[] buffer, int offset, int count);
[System.Security.SecurityCritical]
public override void Write (byte[] buffer, int offset, int count);
override this.Write : byte[] * int * int -> unit
[<System.Security.SecurityCritical>]
override this.Write : byte[] * int * int -> unit
Public Overrides Sub Write (buffer As Byte(), offset As Integer, count As Integer)
參數
- buffer
- Byte[]
緩衝區,其中包含要寫入管道的資料。
- offset
- Int32
buffer
中以零起始的位元組位移,即開始將位元組複製到目前資料流的位置。
- count
- Int32
要寫入目前資料流的位元組數目上限。
- 屬性
例外狀況
buffer
為 null
。
count
大於 buffer
中的可用位元組數目。
管道已關閉。
管道不支援寫入作業。
管道已中斷,或發生另一個 I/O 錯誤。
備註
CanWrite使用屬性來判斷目前PipeStream物件是否支援寫入作業。
如需異步寫入作業,請參閱 BeginWrite 和 EndWrite。