Sdílet prostřednictvím


BufferedStream.Write Metoda

Definice

Přetížení

Name Description
Write(ReadOnlySpan<Byte>)

Zapíše posloupnost bajtů do aktuálního streamu s vyrovnávací pamětí a posune aktuální pozici v rámci tohoto streamu vyrovnávací paměti o počet zapsaných bajtů.

Write(Byte[], Int32, Int32)

Zkopíruje bajty do streamu s vyrovnávací pamětí a posune aktuální pozici v rámci vyrovnávací paměti datového proudu o počet zapsaných bajtů.

Write(ReadOnlySpan<Byte>)

Zdroj:
BufferedStream.cs
Zdroj:
BufferedStream.cs
Zdroj:
BufferedStream.cs
Zdroj:
BufferedStream.cs
Zdroj:
BufferedStream.cs

Zapíše posloupnost bajtů do aktuálního streamu s vyrovnávací pamětí a posune aktuální pozici v rámci tohoto streamu vyrovnávací paměti o počet zapsaných bajtů.

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>

Oblast paměti. Tato metoda zkopíruje obsah této oblasti do aktuálního streamu ve vyrovnávací paměti.

Poznámky

CanWrite Pomocí vlastnosti určete, zda aktuální instance podporuje zápis. WriteAsync Metoda slouží k asynchronnímu zápisu do aktuálního streamu s vyrovnávací pamětí.

Pokud je operace zápisu úspěšná, pozice v rámci streamu ve vyrovnávací paměti se posune o počet zapsaných bajtů. Pokud dojde k výjimce, zůstane pozice v rámci streamu ve vyrovnávací paměti beze změny.

Platí pro

Write(Byte[], Int32, Int32)

Zdroj:
BufferedStream.cs
Zdroj:
BufferedStream.cs
Zdroj:
BufferedStream.cs
Zdroj:
BufferedStream.cs
Zdroj:
BufferedStream.cs

Zkopíruje bajty do streamu s vyrovnávací pamětí a posune aktuální pozici v rámci vyrovnávací paměti datového proudu o počet zapsaných bajtů.

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

Parametry

bufferarray
Byte[]
offset
Int32

Posun ve vyrovnávací paměti, ve které se mají začít kopírovat bajty do aktuálního streamu ve vyrovnávací paměti.

count
Int32

Počet bajtů, které se mají zapisovat do aktuálního streamu vyrovnávací paměti.

Výjimky

array Délka minus offset je menší než count.

array je null.

offset nebo count je negativní.

Stream je zavřený nebo null.

Stream nepodporuje zápis.

Metody byly volány po zavření datového proudu.

Příklady

Tento příklad kódu je součástí většího příkladu uvedeného pro třídu BufferedStream.

// Send the data using the BufferedStream.
Console.WriteLine("Sending data using BufferedStream.");
startTime = DateTime.Now;
for(int i = 0; i < numberOfLoops; i++)
{
    bufStream.Write(dataToSend, 0, dataToSend.Length);
}
bufStream.Flush();
bufferedTime = (DateTime.Now - startTime).TotalSeconds;
Console.WriteLine("{0} bytes sent in {1} seconds.\n",
    numberOfLoops * dataToSend.Length,
    bufferedTime.ToString("F1"));
// Send the data using the BufferedStream.
printfn "Sending data using BufferedStream."
let startTime = DateTime.Now
for _ = 0 to numberOfLoops - 1 do
    bufStream.Write(dataToSend, 0, dataToSend.Length)
bufStream.Flush()
let bufferedTime = (DateTime.Now - startTime).TotalSeconds
printfn $"{numberOfLoops * dataToSend.Length} bytes sent in {bufferedTime:F1} seconds.\n"
' Send the data using the BufferedStream.
Console.WriteLine("Sending data using BufferedStream.")
startTime = DateTime.Now
For i As Integer = 1 To numberOfLoops
    bufStream.Write(dataToSend, 0, dataToSend.Length)
Next i

bufStream.Flush()
bufferedTime = DateTime.Now.Subtract(startTime).TotalSeconds
Console.WriteLine("{0} bytes sent In {1} seconds." & vbCrLf, _
    numberOfLoops * dataToSend.Length, _
    bufferedTime.ToString("F1"))

Viz také

Platí pro