7 manejo de archivos
TRANSCRIPT
![Page 1: 7 manejo de archivos](https://reader035.vdocuments.pub/reader035/viewer/2022071710/55ac73681a28ab98278b4653/html5/thumbnails/1.jpg)
Módulo I- Introducción a la Programación en Módulo I- Introducción a la Programación en la Plataforma .Net con C#la Plataforma .Net con C#
![Page 2: 7 manejo de archivos](https://reader035.vdocuments.pub/reader035/viewer/2022071710/55ac73681a28ab98278b4653/html5/thumbnails/2.jpg)
TEMARIOTEMARIO
CAPITULO III.- INTRODUCCIÓN AL LENGUAJE DE PROGRAMACIÓN C#
Introducción Manejo ArchivosIntroducción Manejo Archivos Utilizando las Clases File y Utilizando las Clases File y
FileInfoFileInfo Utilizando la Clase StreamUtilizando la Clase Stream
![Page 3: 7 manejo de archivos](https://reader035.vdocuments.pub/reader035/viewer/2022071710/55ac73681a28ab98278b4653/html5/thumbnails/3.jpg)
Manejo de ArchivosManejo de ArchivosInteractuar con archivos es un común requerimiento de muchas aplicaciones.
El Namespace System.IO contiene un conjunto de clases que simplifican la interacción con el sistema de archivo, ejemplo: Las clases File and FileInfo.
La Clase Files:La Clase Files: La Clase FileInfo:La Clase FileInfo:Copy()
Create()
Delete()
Exists()
CopyTo()
Delete()
Length
Open()
INTRODUCCIÓN MANEJO DE ARCHIVOSINTRODUCCIÓN MANEJO DE ARCHIVOS
![Page 4: 7 manejo de archivos](https://reader035.vdocuments.pub/reader035/viewer/2022071710/55ac73681a28ab98278b4653/html5/thumbnails/4.jpg)
Escribiendo y Leyendo de Archivos Utilizando File y Escribiendo y Leyendo de Archivos Utilizando File y FileInfoFileInfo
string filePath = "myFile.txt";...byte[] data = File.ReadAllBytes(filePath); // Datos Binarios.string[] lines = File.ReadAllLines(filePath); // Lectura Por Lineas.string data = File.ReadAllText(filePath); // Archivo completo.
string filePath = "myFile.txt";...byte[] data = File.ReadAllBytes(filePath); // Datos Binarios.string[] lines = File.ReadAllLines(filePath); // Lectura Por Lineas.string data = File.ReadAllText(filePath); // Archivo completo.
Leyendo data desde archivo
string filePath = "myFile.txt";...string[] fileLines = {"Line 1", "Line 2", "Line 3"};File.AppendAllLines(filePath, fileLines); // Concatenar Lineas.File.WriteAllLines(filePath, fileLines); // Escribir por linea....string fileContents = "I am writing this text to a file ...“; File.AppendAllText(filePath, fileContents); // Concatenar texto..File.WriteAllText(filePath, fileContents); // Escribir todas las lineas.
string filePath = "myFile.txt";...string[] fileLines = {"Line 1", "Line 2", "Line 3"};File.AppendAllLines(filePath, fileLines); // Concatenar Lineas.File.WriteAllLines(filePath, fileLines); // Escribir por linea....string fileContents = "I am writing this text to a file ...“; File.AppendAllText(filePath, fileContents); // Concatenar texto..File.WriteAllText(filePath, fileContents); // Escribir todas las lineas.
Escribiendo data en archivo
![Page 5: 7 manejo de archivos](https://reader035.vdocuments.pub/reader035/viewer/2022071710/55ac73681a28ab98278b4653/html5/thumbnails/5.jpg)
Manipulando DirectoriosManipulando DirectoriosEl Namespace System.IO contiene las clases Directory y DirectoryInfo las cuales ayudan a simplificar la interacción con directorios
string dirPath = @"C:\Users\Student\MyDirectory";...Directory.CreateDirectory(dirPath); Directory.Delete(dirPath);string[] dirs = Directory.GetDirectories(dirPath);string[] files = Directory.GetFiles(dirPath);
string dirPath = @"C:\Users\Student\MyDirectory";...Directory.CreateDirectory(dirPath); Directory.Delete(dirPath);string[] dirs = Directory.GetDirectories(dirPath);string[] files = Directory.GetFiles(dirPath);
string dirPath = @"C:\Users\Student\MyDirectory";DirectoryInfo dir = new DirectoryInfo(dirPath); ...bool exists = dir.Exists;DirectoryInfo[] dirs = dir.GetDirectories();FileInfo[] files = dir.GetFiles();string fullName = dir.FullName;
string dirPath = @"C:\Users\Student\MyDirectory";DirectoryInfo dir = new DirectoryInfo(dirPath); ...bool exists = dir.Exists;DirectoryInfo[] dirs = dir.GetDirectories();FileInfo[] files = dir.GetFiles();string fullName = dir.FullName;
Clase Directory
Clase DirectoryInfo
![Page 6: 7 manejo de archivos](https://reader035.vdocuments.pub/reader035/viewer/2022071710/55ac73681a28ab98278b4653/html5/thumbnails/6.jpg)
Que es un Streams?Que es un Streams?
Fuente Repositorio
Aplicación
0100011
1110010
1010010
Un Stream es un mecanismo que nos permite manipular los datos en partes manejables.
![Page 7: 7 manejo de archivos](https://reader035.vdocuments.pub/reader035/viewer/2022071710/55ac73681a28ab98278b4653/html5/thumbnails/7.jpg)
Leyendo y Escribiendo Datos Binarios
byte[] dataCollection = { 1, 4, 6, 7, 12, 33, 26, 98, 82, 101 };FileStream destFile = new FileStream(destinationFilePath);BinaryWriter writer = new BinaryWriter(destFile);foreach (byte data in dataCollection){ writer.Write(data);}writer.Close();destFile.Close();
byte[] dataCollection = { 1, 4, 6, 7, 12, 33, 26, 98, 82, 101 };FileStream destFile = new FileStream(destinationFilePath);BinaryWriter writer = new BinaryWriter(destFile);foreach (byte data in dataCollection){ writer.Write(data);}writer.Close();destFile.Close();
FileStream sourceFile = new FileStream(sourceFilePath);BinaryReader reader = new BinaryReader(sourceFile);int position = 0;int length = (int)reader.BaseStream.Length;byte[] dataCollection = new byte[length];int returnedByte;while ((returnedByte = reader.Read()) != -1){ dataCollection[position] = (byte)returnedByte; position += sizeof(byte);}reader.Close();sourceFile.Close();
FileStream sourceFile = new FileStream(sourceFilePath);BinaryReader reader = new BinaryReader(sourceFile);int position = 0;int length = (int)reader.BaseStream.Length;byte[] dataCollection = new byte[length];int returnedByte;while ((returnedByte = reader.Read()) != -1){ dataCollection[position] = (byte)returnedByte; position += sizeof(byte);}reader.Close();sourceFile.Close();
Clase BinaryReader
Clase BinaryWriter
![Page 8: 7 manejo de archivos](https://reader035.vdocuments.pub/reader035/viewer/2022071710/55ac73681a28ab98278b4653/html5/thumbnails/8.jpg)
Leyendo y Escribiendo TextoLeyendo y Escribiendo TextoFileStream sourceFile = new FileStream(sourceFilePath);StreamReader reader = new StreamReader(sourceFile);StringBuilder fileContents = new StringBuilder();while (reader.Peek() != -1){ fileContents.Append((char)reader.Read());}string data = fileContents.ToString();reader.Close();sourceFile.Close();
FileStream sourceFile = new FileStream(sourceFilePath);StreamReader reader = new StreamReader(sourceFile);StringBuilder fileContents = new StringBuilder();while (reader.Peek() != -1){ fileContents.Append((char)reader.Read());}string data = fileContents.ToString();reader.Close();sourceFile.Close();
FileStream destFile = new FileStream( “..."); StreamWriter writer = new StreamWriter(destFile);
writer.WriteLine(“Hola, Esto se escribira en el archivo");
writer.Close();destFile.Close();
FileStream destFile = new FileStream( “..."); StreamWriter writer = new StreamWriter(destFile);
writer.WriteLine(“Hola, Esto se escribira en el archivo");
writer.Close();destFile.Close();
Clase StreamReader
Clase StreamWriter
![Page 9: 7 manejo de archivos](https://reader035.vdocuments.pub/reader035/viewer/2022071710/55ac73681a28ab98278b4653/html5/thumbnails/9.jpg)
EjerciciosEjercicios
1.1. Desarrollar un programa que guarde y lea de un Desarrollar un programa que guarde y lea de un archivo utilizando la clase (File o FileInfo) los archivo utilizando la clase (File o FileInfo) los siguientes dato: Cedula, Nombre, Apellido, siguientes dato: Cedula, Nombre, Apellido, Teléfono, Fecha Nacimiento. El programa debe Teléfono, Fecha Nacimiento. El programa debe permitir escribir un máximo de 5 registros con los permitir escribir un máximo de 5 registros con los datos especificados. El menú consiste de una datos especificados. El menú consiste de una opción para escribir y otra de lectura que mostrara opción para escribir y otra de lectura que mostrara cada registro con sus datos en pantalla.cada registro con sus datos en pantalla.
2.2. Desarrollar el programa anterior utilizando Desarrollar el programa anterior utilizando FileStream, StreamWriter y StreamReaderFileStream, StreamWriter y StreamReader