BufferedStream.Write Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Sobrecargas
| Nombre | Description |
|---|---|
| Write(ReadOnlySpan<Byte>) |
Escribe una secuencia de bytes en la secuencia almacenada en búfer actual y avanza la posición actual dentro de esta secuencia almacenada en búfer por el número de bytes escritos. |
| Write(Byte[], Int32, Int32) |
Copia bytes en el flujo almacenado en búfer y avanza la posición actual dentro de la secuencia almacenada en búfer por el número de bytes escritos. |
Write(ReadOnlySpan<Byte>)
- Source:
- BufferedStream.cs
- Source:
- BufferedStream.cs
- Source:
- BufferedStream.cs
- Source:
- BufferedStream.cs
- Source:
- BufferedStream.cs
Escribe una secuencia de bytes en la secuencia almacenada en búfer actual y avanza la posición actual dentro de esta secuencia almacenada en búfer por el número de bytes escritos.
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))
Parámetros
- buffer
- ReadOnlySpan<Byte>
Una región de memoria. Este método copia el contenido de esta región en la secuencia almacenada en búfer actual.
Comentarios
Use la CanWrite propiedad para determinar si la instancia actual admite la escritura. Use el WriteAsync método para escribir de forma asincrónica en la secuencia almacenada en búfer actual.
Si la operación de escritura se realiza correctamente, la posición dentro del flujo almacenado en búfer avanza por el número de bytes escritos. Si se produce una excepción, la posición dentro de la secuencia almacenada en búfer permanece sin cambios.
Se aplica a
Write(Byte[], Int32, Int32)
- Source:
- BufferedStream.cs
- Source:
- BufferedStream.cs
- Source:
- BufferedStream.cs
- Source:
- BufferedStream.cs
- Source:
- BufferedStream.cs
Copia bytes en el flujo almacenado en búfer y avanza la posición actual dentro de la secuencia almacenada en búfer por el número de bytes escritos.
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)
Parámetros
- bufferarray
- Byte[]
- offset
- Int32
Desplazamiento en el búfer en el que se van a empezar a copiar bytes en el flujo almacenado en búfer actual.
- count
- Int32
Número de bytes que se van a escribir en la secuencia almacenada en búfer actual.
Excepciones
La longitud de array menos offset es menor que count.
array es null.
offset o count es negativo.
La secuencia está cerrada o null.
La secuencia no admite la escritura.
Se llamó a los métodos después de cerrar la secuencia.
Ejemplos
Este ejemplo de código forma parte de un ejemplo más grande proporcionado para la BufferedStream clase .
// 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"))
Consulte también
- CanWrite
- Read(Byte[], Int32, Int32)
- E/S de archivos y secuencias
- Cómo: Leer texto de un archivo
- Cómo: Escribir texto en un archivo