NetworkStream.Write Метод

Определение

Перегрузки

Write(ReadOnlySpan<Byte>)

Записывает данные в NetworkStream объект из диапазона байтов, доступного только для чтения.Writes data to the NetworkStream from a read-only byte span.

Write(Byte[], Int32, Int32)

Записывает данные в NetworkStream из указанного диапазона массива байтов.Writes data to the NetworkStream from a specified range of a byte array.

Write(ReadOnlySpan<Byte>)

Записывает данные в NetworkStream объект из диапазона байтов, доступного только для чтения.Writes data to the NetworkStream from a read-only byte span.

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.The data to write to the NetworkStream.

Исключения

Параметр NetworkStream не поддерживает запись.The NetworkStream does not support writing.

Произошла ошибка при обращении к сокету.An error occurred when accessing the socket.

-или--or-

Произошел сбой в процессе записи в сеть.There was a failure while writing to the network.

Объект NetworkStream закрыт.The NetworkStream is closed.

Комментарии

Этот метод отправляет все байты в buffer сеть.This method sends all bytes in buffer to the network. WriteМетод блокируется до тех пор, пока не будет отправлено запрошенное число байтов или SocketException не будет создано исключение.The Write method blocks until the requested number of bytes is sent or a SocketException is thrown.

Примечание

Проверьте, является ли объект NetworkStream доступным для записи, вызвав CanWrite свойство.Check to see if the NetworkStream is writable by calling the CanWrite property. При попытке записи в объект, недоступный NetworkStream для записи, вы получите InvalidOperationException .If you attempt to write to a NetworkStream that is not writable, you will get an InvalidOperationException.

Примечание

При получении сообщения IOException Проверьте InnerException свойство, чтобы определить, вызвано ли оно SocketException .If you receive an IOException, check the InnerException property to determine if it was caused by a SocketException. Если это так, используйте ErrorCode свойство для получения конкретного кода ошибки и подробное описание ошибки см. в документации по коду ошибки API Windows Sockets версии 2.If so, use the ErrorCode property to obtain the specific error code and refer to the Windows Sockets version 2 API error code documentation for a detailed description of the error.

Применяется к

Write(Byte[], Int32, Int32)

Записывает данные в NetworkStream из указанного диапазона массива байтов.Writes data to the NetworkStream from a specified range of a byte array.

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
Public Overrides Sub Write (buffer As Byte(), offset As Integer, size As Integer)

Параметры

buffer
Byte[]

Массив типа Byte, содержащий данные для записи в объект NetworkStream.An array of type Byte that contains the data to write to the NetworkStream.

offset
Int32

Место в буфере buffer, начиная с которого записываются данные.The location in buffer from which to start writing data.

size
Int32

Число байтов для записи в объект NetworkStream.The number of bytes to write to the NetworkStream.

Исключения

Параметр buffer имеет значение null.The buffer parameter is null.

Значение параметра offset меньше 0.The offset parameter is less than 0.

-или--or- Значение параметра offset больше длины значения, указанного в параметре buffer.The offset parameter is greater than the length of buffer.

-или--or- Значение параметра size меньше 0.The size parameter is less than 0.

-или--or- Значение параметра size больше разности значений длины в параметре buffer и значения параметра offset.The size parameter is greater than the length of buffer minus the value of the offset parameter.

Параметр NetworkStream не поддерживает запись.The NetworkStream does not support writing.

Произошла ошибка при обращении к сокету.An error occurred when accessing the socket.

-или--or-

Произошел сбой в процессе записи в сеть.There was a failure while writing to the network.

Объект NetworkStream закрыт.The NetworkStream is closed.

Примеры

В следующем примере кода проверяется, является ли объект NetworkStream доступным для записи.The following code example checks to see whether the NetworkStream is writable. Если это так, то Write используется для записи небольшого сообщения.If it is, then Write is used to write a small message.

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

Комментарии

Этот метод начинается с указанного offset и отправляет size байты из содержимого buffer в сеть.This method starts at the specified offset and sends size bytes from the contents of buffer to the network. WriteМетод блокируется до тех пор, пока не будет отправлено запрошенное число байтов или SocketException не будет создано исключение.The Write method blocks until the requested number of bytes is sent or a SocketException is thrown.

Примечание

Проверьте, является ли объект NetworkStream доступным для записи, вызвав CanWrite свойство.Check to see if the NetworkStream is writable by calling the CanWrite property. При попытке записи в объект, недоступный NetworkStream для записи, вы получите InvalidOperationException .If you attempt to write to a NetworkStream that is not writable, you will get an InvalidOperationException.

Примечание

При получении сообщения IOException Проверьте InnerException свойство, чтобы определить, вызвано ли оно SocketException .If you receive an IOException, check the InnerException property to determine if it was caused by a SocketException. Если это так, используйте ErrorCode свойство для получения конкретного кода ошибки и подробное описание ошибки см. в документации по коду ошибки API Windows Sockets версии 2.If so, use the ErrorCode property to obtain the specific error code and refer to the Windows Sockets version 2 API error code documentation for a detailed description of the error.

См. также раздел

Применяется к