NetworkStream.Write メソッド

定義

オーバーロード

名前 説明
Write(ReadOnlySpan<Byte>)

読み取り専用バイト スパンから NetworkStream にデータを書き込みます。

Write(Byte[], Int32, Int32)

バイト配列の指定した範囲から NetworkStream にデータを書き込みます。

Write(ReadOnlySpan<Byte>)

読み取り専用バイト スパンから NetworkStream にデータを書き込みます。

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>

NetworkStreamに書き込むデータ。

例外

NetworkStreamは書き込みをサポートしていません。

ソケットにアクセスするときにエラーが発生しました。

-または-

ネットワークへの書き込み中にエラーが発生しました。

NetworkStream は閉じられます。

注釈

このメソッドは、 buffer 内のすべてのバイトをネットワークに送信します。 Write メソッドは、要求されたバイト数が送信されるか、SocketExceptionがスローされるまでブロックします。

Note

CanWrite プロパティを呼び出して、NetworkStreamが書き込み可能かどうかを確認します。 書き込み不可能な NetworkStream に書き込もうとすると、 InvalidOperationExceptionが表示されます。

Note

IOExceptionを受け取った場合は、InnerException プロパティを調べて、SocketExceptionが原因かどうかを判断します。 その場合は、ErrorCode プロパティを使用して特定のエラー コードを取得し、エラーの詳細な説明については、Windows Sockets バージョン 2 API のエラー コードドキュメントを参照してください。

適用対象

Write(Byte[], Int32, Int32)

バイト配列の指定した範囲から NetworkStream にデータを書き込みます。

public:
 override void Write(cli::array <System::Byte> ^ buffer, int offset, int size);
public override void Write(byte[] buffer, int offset, int size);
override this.Write : byte[] * int * int -> unit
abstract member Write : byte[] * int * int -> unit
override this.Write : byte[] * int * int -> unit
Public Overrides Sub Write (buffer As Byte(), offset As Integer, size As Integer)

パラメーター

buffer
Byte[]

Byteに書き込むデータを格納するNetworkStream型の配列。

offset
Int32

データの書き込みを開始する buffer 内の場所。

size
Int32

NetworkStreamに書き込むバイト数。

例外

buffer パラメーターはnull

offset パラメーターが 0 未満です。

-または-

offset パラメーターは、bufferの長さを超えています。

-または-

size パラメーターが 0 未満です。

-または-

size パラメーターは、bufferの長さからoffset パラメーターの値を引いた値を超えています。

NetworkStreamは書き込みをサポートしていません。

ソケットにアクセスするときにエラーが発生しました。

-または-

ネットワークへの書き込み中にエラーが発生しました。

NetworkStream は閉じられます。

次のコード例では、 NetworkStream が書き込み可能かどうかを確認します。 その場合は、 Write を使用して小さなメッセージを書き込みます。

// Examples for CanWrite, and CanWrite
// Check to see if this NetworkStream is writable.
if (myNetworkStream.CanWrite)
{
    byte[] myWriteBuffer = Encoding.ASCII.GetBytes("Are you receiving this message?");
    myNetworkStream.Write(myWriteBuffer, 0, myWriteBuffer.Length);
}
else
{
    Console.WriteLine("Sorry.  You cannot write to this NetworkStream.");
}
' Examples for CanWrite, and CanWrite  
' Check to see if this NetworkStream is writable.
If myNetworkStream.CanWrite Then
   
   Dim myWriteBuffer As Byte() = Encoding.ASCII.GetBytes("Are you receiving this message?")
   myNetworkStream.Write(myWriteBuffer, 0, myWriteBuffer.Length)
Else
   Console.WriteLine("Sorry.  You cannot write to this NetworkStream.")
End If

注釈

このメソッドは、指定したoffsetから始まり、bufferの内容からネットワークにcountバイトを送信します。 Write メソッドは、要求されたバイト数が送信されるか、SocketExceptionがスローされるまでブロックします。

Note

CanWrite プロパティを呼び出して、NetworkStreamが書き込み可能かどうかを確認します。 書き込み不可能な NetworkStream に書き込もうとすると、 InvalidOperationExceptionが表示されます。

Note

IOExceptionを受け取った場合は、InnerException プロパティを調べて、SocketExceptionが原因かどうかを判断します。 その場合は、ErrorCode プロパティを使用して特定のエラー コードを取得し、エラーの詳細な説明については、Windows Sockets バージョン 2 API のエラー コードドキュメントを参照してください。

こちらもご覧ください

適用対象