Compartilhar via


NetworkStream.Write Método

Definição

Sobrecargas

Write(ReadOnlySpan<Byte>)

Grava dados no de NetworkStream um intervalo de bytes somente leitura.

Write(Byte[], Int32, Int32)

Grava dados no NetworkStream de um intervalo especificado de uma matriz de bytes.

Write(ReadOnlySpan<Byte>)

Origem:
NetworkStream.cs
Origem:
NetworkStream.cs
Origem:
NetworkStream.cs

Grava dados no de NetworkStream um intervalo de bytes somente leitura.

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))

Parâmetros

buffer
ReadOnlySpan<Byte>

Os dados a serem gravados em NetworkStream.

Exceções

O NetworkStream não dá suporte à gravação.

Ocorreu um erro ao acessar o soquete.

- ou -

Houve uma falha durante a gravação na rede.

Comentários

Esse método envia todos os bytes para buffer a rede. O Write método é bloqueado até que o número solicitado de bytes seja enviado ou que um SocketException seja lançado.

Observação

Verifique se o NetworkStream é gravável chamando a CanWrite propriedade . Se você tentar gravar em um NetworkStream que não é gravável, obterá um InvalidOperationException.

Observação

Se você receber um IOException, marcar a InnerException propriedade para determinar se ela foi causada por um SocketException. Nesse caso, use a ErrorCode propriedade para obter o código de erro específico e consulte a documentação do código de erro da API do Windows Sockets versão 2 para obter uma descrição detalhada do erro.

Aplica-se a

Write(Byte[], Int32, Int32)

Origem:
NetworkStream.cs
Origem:
NetworkStream.cs
Origem:
NetworkStream.cs

Grava dados no NetworkStream de um intervalo especificado de uma matriz de bytes.

public:
 override void Write(cli::array <System::Byte> ^ buffer, int offset, int size);
public:
 override void Write(cli::array <System::Byte> ^ buffer, int offset, int count);
public override void Write (byte[] buffer, int offset, int size);
public override void Write (byte[] buffer, int offset, int count);
override this.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)
Public Overrides Sub Write (buffer As Byte(), offset As Integer, count As Integer)

Parâmetros

buffer
Byte[]

Uma matriz do tipo Byte que contém os dados a serem gravados no NetworkStream.

offset
Int32

O local no buffer do qual a gravação de dados será iniciada.

sizecount
Int32

O número de bytes a serem gravados no NetworkStream.

Exceções

O parâmetro buffer é null.

O parâmetro offset é menor que 0.

- ou -

O parâmetro offset é maior que o tamanho de buffer.

- ou -

O parâmetro size é menor que 0.

- ou -

O parâmetro size é maior que o tamanho de buffer subtraído do valor do parâmetro offset.

O NetworkStream não dá suporte à gravação.

Ocorreu um erro ao acessar o soquete.

- ou -

Houve uma falha durante a gravação na rede.

Exemplos

O exemplo de código a seguir verifica se o NetworkStream é gravável. Se for, será Write usado para escrever uma mensagem pequena.

// Examples for CanWrite, and CanWrite  
// Check to see if this NetworkStream is writable.
if ( myNetworkStream->CanWrite )
{
   array<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)
{
    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

Comentários

Esse método começa no especificado offset e envia size bytes do conteúdo de buffer para a rede. O Write método é bloqueado até que o número solicitado de bytes seja enviado ou que um SocketException seja lançado.

Observação

Verifique se o NetworkStream é gravável chamando a CanWrite propriedade . Se você tentar gravar em um NetworkStream que não é gravável, obterá um InvalidOperationException.

Observação

Se você receber um IOException, marcar a InnerException propriedade para determinar se ela foi causada por um SocketException. Nesse caso, use a ErrorCode propriedade para obter o código de erro específico e consulte a documentação do código de erro da API do Windows Sockets versão 2 para obter uma descrição detalhada do erro.

Confira também

Aplica-se a