Created
July 11, 2015 15:18
-
-
Save Fhernd/ad4c70fe54606fcd6036 to your computer and use it in GitHub Desktop.
Escritura y lectura de un archivo binario en C#.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// OrtizOL - xCSw - http://ortizol.blogspot.com | |
using System; | |
using System.IO; | |
namespace Receta.CSharp.R0508 | |
{ | |
public class LecturaEscrituraArchivoBinario | |
{ | |
public static void Main() | |
{ | |
Console.WriteLine(Environment.NewLine); | |
// Crea objeto `FileStream` para referenciar un archivo binario -ArchivoBinario.bin-: | |
using (FileStream fs = new FileStream("ArchivoBinario.bin", FileMode.Create)) | |
{ | |
// Escritura sobre el archivo binario `ArchivoBinario.bin` usando un | |
// objeto de la clase `BinaryWriter`: | |
using (BinaryWriter bw = new BinaryWriter(fs)) | |
{ | |
// Escritura de datos de naturaleza primitiva: | |
bw.Write(9517.35M); | |
bw.Write("OrtizOL"); | |
bw.Write("OrtizOL - xCSw"); | |
bw.Write('!'); | |
} | |
} | |
Console.WriteLine("Los datos han sido escritos en el archivo `ArchivoBinario.bin`."); | |
Console.WriteLine("Presione Enter para iniciar el proceso de lectura.\n"); | |
Console.ReadLine(); | |
// Apertura del archivo `ArchivoBinario.bin` en modo lectura: | |
using (FileStream fs = new FileStream("ArchivoBinario.bin", FileMode.Open)) | |
{ | |
// Muestra la información tal cual está escrita en el archivo binario: | |
using (StreamReader sr = new StreamReader(fs)) | |
{ | |
Console.WriteLine(sr.ReadLine()); | |
Console.WriteLine(); | |
// Lectura y conversión de los datos binarios en el tipo de | |
// correspondiente: | |
// Posiciona el cursor desde se iniciara la lectura del | |
// archivo `ArchivoBinario`: | |
fs.Position = 0; | |
using (BinaryReader br = new BinaryReader(fs)) | |
{ | |
Console.WriteLine(br.ReadDecimal()); | |
Console.WriteLine(br.ReadString()); | |
Console.WriteLine(br.ReadString()); | |
Console.WriteLine(br.ReadChar()); | |
} | |
} | |
} | |
Console.WriteLine(Environment.NewLine); | |
} | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment