Este artículo se tradujo automáticamente. Para ver el artículo en inglés, active la casilla Inglés. Además, puede mostrar el texto en inglés en una ventana emergente si mueve el puntero del mouse sobre el texto.
Traducción
Inglés

Método FileStream.WriteByte (Byte)

 

Publicado: octubre de 2016

Escribe un byte en la posición actual de la secuencia de archivo.

Espacio de nombres:   System.IO
Ensamblado:  mscorlib (en mscorlib.dll)

public override void WriteByte(
	byte value
)

Parámetros

value
Type: System.Byte

Un byte que se va a escribir en la secuencia.

Exception Condition
ObjectDisposedException

La secuencia está cerrada.

NotSupportedException

La secuencia no admite escritura.

Este método reemplaza WriteByte.

Use WriteByte para escribir un byte en un FileStream eficazmente. Si la secuencia está cerrada o no se puede escribir, se producirá una excepción.

System_CAPS_noteNota

Utilice la CanWrite propiedad para determinar si la instancia actual admite escritura. Para obtener información adicional, vea CanWrite.

Notas para implementadores:

La implementación predeterminada de Stream crea una nueva matriz de un solo byte y, a continuación, se llama Write. Aunque esto es formalmente correcto, no es eficaz. Cualquier secuencia que posea un búfer interno debe reemplazar este método y proporcionar una versión mucho más eficaz que lea el búfer directamente, evitando la asignación adicional de matrices en cada llamada.

Para obtener una lista de operaciones de directorio y de archivo común, consulte Tareas de E/S comunes.

En el ejemplo de código siguiente se muestra cómo escribir datos en un archivo, byte a byte y, a continuación, compruebe que los datos se han escrito correctamente.

using System;
using System.IO;

class FStream
{
    static void Main()
    {
        const string fileName = "Test#@@#.dat";

        // Create random data to write to the file.
        byte[] dataArray = new byte[100000];
        new Random().NextBytes(dataArray);

        using(FileStream  
            fileStream = new FileStream(fileName, FileMode.Create))
        {
            // Write the data to the file, byte by byte.
            for(int i = 0; i < dataArray.Length; i++)
            {
                fileStream.WriteByte(dataArray[i]);
            }

            // Set the stream position to the beginning of the file.
            fileStream.Seek(0, SeekOrigin.Begin);

            // Read and verify the data.
            for(int i = 0; i < fileStream.Length; i++)
            {
                if(dataArray[i] != fileStream.ReadByte())
                {
                    Console.WriteLine("Error writing data.");
                    return;
                }
            }
            Console.WriteLine("The data was written to {0} " +
                "and verified.", fileStream.Name);
        }
    }
}

Plataforma universal de Windows
Disponible desde 10
.NET Framework
Disponible desde 1.1
Silverlight
Disponible desde 2.0
Windows Phone Silverlight
Disponible desde 7.0
Volver al principio
Mostrar: