Hola que tal, en esta entrada hablaremos de cómo manejar archivos binarios utilizando el lenguaje C# desde Visual Studio.
Para empezar vamos a generar un nuevo proyecto de C# para consola de Windows en Visual Studio con el nombre Ejemplo Archivos Binarios. Posteriormente y como buenas prácticas de programación, creamos una carpeta llamada Clases, la cual contendrá nuestros códigos fuente.
Dentro de la carpeta que acabamos de crear vamos a añadir dos nuevas clases, la primera se llamará EscribirArchivoBinario y la segunda LeerArchivoBinario. Una vez creadas procederemos a editar el código fuente de la primer clase que nos servirá para crear nuestro archivo binario.
El código para dicha clase es el siguiente:
class EscribirArchivoBinario
{
public EscribirArchivoBinario()
{
string fileName = "datos.bin";
double[,] data = new double[4, 4];
Random objeto = new Random(DateTime.Now.Millisecond);
for (int i = 0; i < data.GetLength(0); i++)
{
for (int j = 0; j < data.GetLength(1); j++)
{
data[i, j] = objeto.NextDouble() + objeto.Next(5,26);
Console.Write("[{0}]", data[i, j]);
}
Console.WriteLine();
}
FileStream stream = new FileStream(fileName,
FileMode.OpenOrCreate, FileAccess.Write);
BinaryWriter writer = new BinaryWriter(stream);
Console.WriteLine("Dame tu nombre");
string nombre = Console.ReadLine();
writer.Write(nombre);
writer.Write("\n");
for (int i = 0; i < data.GetLength(0); i++)
{
for (int j = 0; j < data.GetLength(1); j++)
{
writer.Write(data[i, j]);
}
writer.Write("\n");
}
writer.Close();
stream.Close();
}
}
Como se podrán dar cuenta estamos ocupando el constructor de la clase para hacer el todo el proceso de escritura, es decir, es como si estuviéramos inicializando nuestro archivo, dejándolo listo para recibir más información.
Ahora vamos con la segunda clase, la que se encargará de leer nuestro archivo binario una vez que esté creado. El código para la clase de lectura será el siguiente:
class LeerArchivoBinario
{
public LeerArchivoBinario()
{
string fileName = "datos.bin";
FileStream stream = new FileStream(fileName,
FileMode.Open, FileAccess.Read);
BinaryReader reader = new BinaryReader(stream);
Console.Write(reader.ReadString());
Console.Write(reader.ReadString());
for (int i = 0; i < 4; i++)
{
for (int j = 0; j < 4; j++)
{
Console.Write("[{0}]", reader.ReadDouble());
}
Console.Write(reader.ReadString());
}
reader.Close();
stream.Close();
}
}
Ok, con esto listo lo que debemos hacer ahora es ir a nuestro archivo program.cs para agregar las invocaciones necesarias dentro del método main para hacer funcionar nuestro programa.
El código deberá lucir algo así:
class Program
{
static void Main(string[] args)
{
new EscribirArchivoBinario();
new LeerArchivoBinario();
Console.ReadLine();
}
}
Muy bien, ahora es momento de probar que realmente funciona el programa. La salida en pantalla para la ejecución se verá similar a la siguiente imagen. Lo cual corrobora que hemos creado con éxito el archivo y que hemos podido extraer de él su contenido para volver a mostrarlo en pantalla con el formato correcto.
Hasta aquí esta pequeña introducción a los archivos binarios, espero que les sea de utilidad.

Excelente!! Lo seguí paso a paso y me ayudo a entender el manejo de los binarios. Claro , preciso y con código limpio!!
Laura
Me gustaMe gusta
hola alguien me puede ayudar con los archivos binarios
mi correo es lilromeo0@hotmail.com
Me gustaMe gusta
Hola que tal, qué problema tienes con los archivos binarios?
Me gustaMe gusta
Eres un crack bro, esto me sirvió bastante sin tanta vuelta
Me gustaMe gusta