BufferedStream.Write(Byte[], Int32, Int32) Метод

Определение

Копирует байты в буферный поток и перемещает текущую позицию в буферизованном потоке по количеству записанных байтов.

public:
 override void Write(cli::array <System::Byte> ^ array, int offset, int count);
public override void Write(byte[] array, int offset, int count);
override this.Write : byte[] * int * int -> unit
Public Overrides Sub Write (array As Byte(), offset As Integer, count As Integer)

Параметры

array
Byte[]

Массив байтов, из которого необходимо скопировать count байты в текущий буферный поток.

offset
Int32

Смещение в буфере, с которого начинается копирование байтов в текущий буферный поток.

count
Int32

Количество байтов, записываемых в текущий буферный поток.

Исключения

Длина минуса arrayoffset меньше count.

array равно null.

offset или count отрицательный.

Поток закрыт или null.

Поток не поддерживает запись.

Методы были вызваны после закрытия потока.

Примеры

Этот пример кода является частью более крупного примера, предоставленного для 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"))

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

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