Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Las System.IO.BinaryWriter clases y System.IO.BinaryReader se usan para escribir y leer datos distintos de cadenas de caracteres. En el ejemplo siguiente se muestra cómo crear un flujo de archivos vacío, escribir datos en él y leer datos de él.
En el ejemplo se crea un archivo de datos denominado Test.data en el directorio actual, se crean los objetos asociados BinaryWriter y BinaryReader, y se usa el objeto BinaryWriter para escribir los enteros del 0 al 10 en Test.data, lo que deja el puntero de archivo al final del archivo. A BinaryReader continuación, el objeto vuelve a establecer el puntero de archivo en el origen y lee el contenido especificado.
Nota:
Si Test.data ya existe en el directorio actual, se produce una IOException excepción. Use la opción FileMode.Create en lugar de FileMode.CreateNew para crear siempre un archivo nuevo sin generar una excepción.
Ejemplo
using System;
using System.IO;
class MyStream
{
private const string FILE_NAME = "Test.data";
public static void Main()
{
if (File.Exists(FILE_NAME))
{
Console.WriteLine($"{FILE_NAME} already exists!");
return;
}
using (FileStream fs = new FileStream(FILE_NAME, FileMode.CreateNew))
{
using (BinaryWriter w = new BinaryWriter(fs))
{
for (int i = 0; i < 11; i++)
{
w.Write(i);
}
}
}
using (FileStream fs = new FileStream(FILE_NAME, FileMode.Open, FileAccess.Read))
{
using (BinaryReader r = new BinaryReader(fs))
{
for (int i = 0; i < 11; i++)
{
Console.WriteLine(r.ReadInt32());
}
}
}
}
}
// The example creates a file named "Test.data" and writes the integers 0 through 10 to it in binary format.
// It then writes the contents of Test.data to the console with each integer on a separate line.
Imports System.IO
Class MyStream
Private Const FILE_NAME As String = "Test.data"
Public Shared Sub Main()
If File.Exists(FILE_NAME) Then
Console.WriteLine($"{FILE_NAME} already exists!")
Return
End If
Using fs As New FileStream(FILE_NAME, FileMode.CreateNew)
Using w As New BinaryWriter(fs)
For i As Integer = 0 To 10
w.Write(i)
Next
End Using
End Using
Using fs As New FileStream(FILE_NAME, FileMode.Open, FileAccess.Read)
Using r As New BinaryReader(fs)
For i As Integer = 0 To 10
Console.WriteLine(r.ReadInt32())
Next
End Using
End Using
End Sub
End Class
' The example creates a file named "Test.data" and writes the integers 0 through 10 to it in binary format.
' It then writes the contents of Test.data to the console with each integer on a separate line.
Consulte también
- BinaryReader
- BinaryWriter
- FileStream
- FileStream.Seek
- SeekOrigin
- Procedimiento para enumerar directorios y archivos
- Cómo: Abrir y anexar a un archivo de registro
- Cómo: Leer texto de un archivo
- Cómo: Escribir texto en un archivo
- Cómo: Leer caracteres de una cadena
- Cómo: Escribir caracteres en una cadena
- E/S de archivos y secuencias