NetworkStream.Write Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Przeciążenia
Write(ReadOnlySpan<Byte>) |
Zapisuje dane na podstawie NetworkStream zakresu bajtów tylko do odczytu. |
Write(Byte[], Int32, Int32) |
Zapisuje dane w NetworkStream obiekcie z określonego zakresu tablicy bajtów. |
Write(ReadOnlySpan<Byte>)
- Źródło:
- NetworkStream.cs
- Źródło:
- NetworkStream.cs
- Źródło:
- NetworkStream.cs
Zapisuje dane na podstawie NetworkStream zakresu bajtów tylko do odczytu.
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))
Parametry
- buffer
- ReadOnlySpan<Byte>
Dane do zapisu w obiekcie NetworkStream.
Wyjątki
Element NetworkStream nie obsługuje pisania.
Wystąpił błąd podczas uzyskiwania dostępu do gniazda.
-lub-
Wystąpił błąd podczas zapisywania w sieci.
Element NetworkStream jest zamknięty.
Uwagi
Ta metoda wysyła wszystkie bajty do buffer
sieci. Metoda Write
blokuje, dopóki żądana liczba bajtów nie zostanie wysłana lub zostanie zwrócona SocketException wartość .
Uwaga
Sprawdź, czy właściwość NetworkStream jest zapisywalna, wywołując CanWrite właściwość . Jeśli spróbujesz zapisać w obiekcie NetworkStream , który nie jest zapisywalny, otrzymasz wartość InvalidOperationException.
Uwaga
Jeśli otrzymasz element IOException, sprawdź InnerException właściwość , aby ustalić, czy została ona spowodowana przez element SocketException. Jeśli tak, użyj ErrorCode właściwości , aby uzyskać określony kod błędu i zapoznaj się z dokumentacją kodu błędu interfejsu API Windows Sockets w wersji 2, aby uzyskać szczegółowy opis błędu.
Dotyczy
Write(Byte[], Int32, Int32)
- Źródło:
- NetworkStream.cs
- Źródło:
- NetworkStream.cs
- Źródło:
- NetworkStream.cs
Zapisuje dane w NetworkStream obiekcie z określonego zakresu tablicy bajtów.
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)
Parametry
- buffer
- Byte[]
Tablica typu Byte zawierająca dane do zapisu w obiekcie NetworkStream.
- offset
- Int32
Lokalizacja, w buffer
której ma rozpocząć zapisywanie danych.
- sizecount
- Int32
Liczba bajtów do zapisania w obiekcie NetworkStream.
Wyjątki
Parametr buffer
ma wartość null
.
Parametr offset
jest mniejszy niż 0.
-lub-
Parametr offset
jest większy niż długość buffer
.
-lub-
Parametr size
jest mniejszy niż 0.
-lub-
Parametr size
jest większy niż długość buffer
minus wartość parametru offset
.
Element NetworkStream nie obsługuje pisania.
Wystąpił błąd podczas uzyskiwania dostępu do gniazda.
-lub-
Wystąpił błąd podczas zapisywania w sieci.
Element NetworkStream jest zamknięty.
Przykłady
Poniższy przykład kodu sprawdza, czy NetworkStream element jest zapisywalny. Jeśli tak jest, Write zostanie użyta do napisania małej wiadomości.
// 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
Uwagi
Ta metoda rozpoczyna się od określonej offset
metody i wysyła bajty size
z zawartości buffer
do sieci. Metoda Write
blokuje, dopóki żądana liczba bajtów nie zostanie wysłana lub zostanie zwrócona SocketException wartość .
Uwaga
Sprawdź, czy właściwość NetworkStream jest zapisywalna, wywołując CanWrite właściwość . Jeśli spróbujesz zapisać w obiekcie NetworkStream , który nie jest zapisywalny, otrzymasz wartość InvalidOperationException.
Uwaga
Jeśli otrzymasz element IOException, sprawdź InnerException właściwość , aby ustalić, czy została ona spowodowana przez element SocketException. Jeśli tak, użyj ErrorCode właściwości , aby uzyskać określony kod błędu i zapoznaj się z dokumentacją kodu błędu interfejsu API Windows Sockets w wersji 2, aby uzyskać szczegółowy opis błędu.