Compartir vía


FileStream.Write Método

Definición

Sobrecargas

Nombre Description
Write(ReadOnlySpan<Byte>)

Escribe una secuencia de bytes de un intervalo de solo lectura en la secuencia de archivos actual y avanza la posición actual dentro de esta secuencia de archivos por el número de bytes escritos.

Write(Byte[], Int32, Int32)

Escribe un bloque de bytes en la secuencia de archivos.

Write(ReadOnlySpan<Byte>)

Source:
FileStream.cs
Source:
FileStream.cs
Source:
FileStream.cs
Source:
FileStream.cs
Source:
FileStream.cs

Escribe una secuencia de bytes de un intervalo de solo lectura en la secuencia de archivos actual y avanza la posición actual dentro de esta secuencia de archivos 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 de archivos actual.

Excepciones

.NET 8 y versiones posteriores: la canalización subyacente está cerrada o desconectada.

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 actual.

Si la operación de escritura se realiza correctamente, la posición dentro de la secuencia de archivos avanza por el número de bytes escritos. Si se produce una excepción, la posición dentro de la secuencia de archivos permanece sin cambios.

Se aplica a

Write(Byte[], Int32, Int32)

Source:
FileStream.cs
Source:
FileStream.cs
Source:
FileStream.cs
Source:
FileStream.cs
Source:
FileStream.cs

Escribe un bloque de bytes en la secuencia de archivos.

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

Parámetros

arraybuffer
Byte[]

Búfer que contiene datos que se van a escribir en la secuencia.

offset
Int32

Desplazamiento de bytes de base cero en array el que se van a empezar a copiar bytes en la secuencia.

count
Int32

Número máximo de bytes que se van a escribir.

Excepciones

array es null.

offset y count describen un intervalo no válido en array.

offset o count es negativo.

Error de E/S.

O bien

Otro subproceso puede haber provocado un cambio inesperado en la posición del identificador de archivo del sistema operativo.

O bien

.NET 8 y versiones posteriores: la canalización subyacente está cerrada o desconectada.

La secuencia está cerrada.

La instancia de flujo actual no admite la escritura.

Ejemplos

Este ejemplo de código forma parte de un ejemplo más grande proporcionado para el Lock método .

// Write the original file data.
if(fileStream.Length == 0)
{
    tempString =
        lastRecordText + recordNumber.ToString();
    fileStream.Write(uniEncoding.GetBytes(tempString),
        0, uniEncoding.GetByteCount(tempString));
}
// Write the original file data.
if fileStream.Length = 0 then
    let tempString = lastRecordText + string recordNumber
    fileStream.Write(uniEncoding.GetBytes tempString, 0, uniEncoding.GetByteCount tempString)
' Write the original file data.
If aFileStream.Length = 0 Then
    tempString = _
        lastRecordText + recordNumber.ToString()
    aFileStream.Write(uniEncoding.GetBytes(tempString), _
        0, uniEncoding.GetByteCount(tempString))
End If

Comentarios

Este método invalida Write.

El offset parámetro proporciona el desplazamiento del byte en array (el índice de búfer) en el que se va a empezar a copiar y el count parámetro proporciona el número de bytes que se escribirán en la secuencia. Si la operación de escritura se realiza correctamente, la posición actual de la secuencia está avanzada por el número de bytes escritos. Si se produce una excepción, la posición actual de la secuencia no cambia.

Nota:

Use la CanWrite propiedad para determinar si la instancia actual admite la escritura. Para obtener más información, vea CanWrite.

No interrumpa un subproceso que realice una operación de escritura. Aunque puede parecer que la aplicación se ejecuta correctamente después de desbloquear el subproceso, la interrupción puede reducir el rendimiento y la confiabilidad de la aplicación.

Para obtener una lista de las operaciones comunes de archivos y directorios, consulte Tareas comunes de E/S.

Consulte también

Se aplica a