Sdílet prostřednictvím


NetworkStream.Write Metoda

Definice

Přetížení

Write(ReadOnlySpan<Byte>)

Zapisuje data z bajtového rozsahu NetworkStream jen pro čtení.

Write(Byte[], Int32, Int32)

Zapíše data do NetworkStream pole ze zadané oblasti pole bajtů.

Write(ReadOnlySpan<Byte>)

Zdroj:
NetworkStream.cs
Zdroj:
NetworkStream.cs
Zdroj:
NetworkStream.cs

Zapisuje data z bajtového rozsahu NetworkStream jen pro čtení.

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>

Data, která se mají zapsat do NetworkStream.

Výjimky

Nástroj NetworkStream nepodporuje psaní.

Při přístupu k soketu došlo k chybě.

-nebo-

Při zápisu do sítě došlo k chybě.

Poznámky

Tato metoda odešle všechny bajty do buffer sítě. Metoda Write blokuje, dokud není odeslán požadovaný počet bajtů nebo SocketException dokud není vyvolán požadovaný počet bajtů.

Poznámka

Voláním CanWrite vlastnosti zkontrolujte, jestli NetworkStream je zapisovatelný. Pokud se pokusíte zapisovat na NetworkStream objekt, který není zapisovatelný, získáte .InvalidOperationException

Poznámka

Pokud se zobrazí , IOExceptionzkontrolujte vlastnost a InnerException zjistěte, jestli byla způsobená objektem SocketException. Pokud ano, použijte ErrorCode vlastnost k získání konkrétního kódu chyby a podrobný popis chyby najdete v dokumentaci ke kódu chyby rozhraní API windows Sockets verze 2.

Platí pro

Write(Byte[], Int32, Int32)

Zdroj:
NetworkStream.cs
Zdroj:
NetworkStream.cs
Zdroj:
NetworkStream.cs

Zapíše data do NetworkStream pole ze zadané oblasti pole bajtů.

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[]

Pole typu Byte , které obsahuje data pro zápis do NetworkStream.

offset
Int32

Umístění, ze buffer kterého chcete začít zapisovat data.

sizecount
Int32

Počet bajtů, které se mají zapsat do NetworkStream.

Výjimky

Parametr buffer je null.

Parametr offset je menší než 0.

-nebo-

Parametr offset je větší než délka parametru buffer.

-nebo-

Parametr size je menší než 0.

-nebo-

Parametr size je větší než délka buffer minus hodnota parametru offset .

Nástroj NetworkStream nepodporuje psaní.

Při přístupu k soketu došlo k chybě.

-nebo-

Při zápisu do sítě došlo k chybě.

Příklady

Následující příklad kódu zkontroluje, jestli NetworkStream je zapisovatelný. Pokud ano, použije Write se k napsání malé zprávy.

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

Poznámky

Tato metoda začíná na zadaném offset a odesílá size bajty z obsahu buffer do sítě. Metoda Write blokuje, dokud není odeslán požadovaný počet bajtů nebo SocketException dokud není vyvolán požadovaný počet bajtů.

Poznámka

Voláním CanWrite vlastnosti zkontrolujte, jestli NetworkStream je zapisovatelný. Pokud se pokusíte zapisovat na NetworkStream objekt, který není zapisovatelný, získáte .InvalidOperationException

Poznámka

Pokud se zobrazí , IOExceptionzkontrolujte vlastnost a InnerException zjistěte, jestli byla způsobená objektem SocketException. Pokud ano, použijte ErrorCode vlastnost k získání konkrétního kódu chyby a podrobný popis chyby najdete v dokumentaci ke kódu chyby rozhraní API windows Sockets verze 2.

Viz také

Platí pro