C #: E / S de archivos
UNA filees una colección de datos almacenados en un disco con un nombre específico y una ruta de directorio. Cuando un archivo se abre para leer o escribir, se conviertestream.
El flujo es básicamente la secuencia de bytes que pasan por la ruta de comunicación. Hay dos corrientes principales: lainput stream y el output stream. los input stream se utiliza para leer datos de archivo (operación de lectura) y el output stream se utiliza para escribir en el archivo (operación de escritura).
Clases de E / S de C #
El espacio de nombres System.IO tiene varias clases que se utilizan para realizar numerosas operaciones con archivos, como crear y eliminar archivos, leer o escribir en un archivo, cerrar un archivo, etc.
La siguiente tabla muestra algunas clases no abstractas de uso común en el espacio de nombres System.IO:
No Señor. | Clase de E / S y descripción |
---|---|
1 | BinaryReader Lee datos primitivos de una secuencia binaria. |
2 | BinaryWriter Escribe datos primitivos en formato binario. |
3 | BufferedStream Un almacenamiento temporal para un flujo de bytes. |
4 | Directory Ayuda a manipular la estructura de un directorio. |
5 | DirectoryInfo Se utiliza para realizar operaciones en directorios. |
6 | DriveInfo Proporciona información para las unidades. |
7 | File Ayuda a manipular archivos. |
8 | FileInfo Se utiliza para realizar operaciones en archivos. |
9 | FileStream Se utiliza para leer y escribir en cualquier ubicación de un archivo. |
10 | MemoryStream Se utiliza para el acceso aleatorio a los datos transmitidos almacenados en la memoria. |
11 | Path Realiza operaciones sobre la información de la ruta. |
12 | StreamReader Se utiliza para leer caracteres de un flujo de bytes. |
13 | StreamWriter Se utiliza para escribir caracteres en una secuencia. |
14 | StringReader Se utiliza para leer desde un búfer de cadena. |
15 | StringWriter Se utiliza para escribir en un búfer de cadena. |
La clase FileStream
los FileStreamLa clase en el espacio de nombres System.IO ayuda a leer, escribir y cerrar archivos. Esta clase se deriva de la clase abstracta Stream.
Necesitas crear un FileStreamobjeto para crear un nuevo archivo o abrir un archivo existente. La sintaxis para crear unFileStream El objeto es el siguiente:
FileStream <object_name> = new FileStream( <file_name>, <FileMode Enumerator>,
<FileAccess Enumerator>, <FileShare Enumerator>);
Por ejemplo, creamos un objeto FileStream F por leer un archivo llamado sample.txt as shown -
FileStream F = new FileStream("sample.txt", FileMode.Open, FileAccess.Read,
FileShare.Read);
No Señor. | Descripción de parámetros |
---|---|
1 | FileMode los FileModeEl enumerador define varios métodos para abrir archivos. Los miembros del enumerador FileMode son:
|
2 | FileAccess FileAccess los enumeradores tienen miembros: Read, ReadWrite y Write. |
3 | FileShare FileShare los enumeradores tienen los siguientes miembros:
|
Ejemplo
El siguiente programa demuestra el uso del FileStream clase -
using System;
using System.IO;
namespace FileIOApplication {
class Program {
static void Main(string[] args) {
FileStream F = new FileStream("test.dat", FileMode.OpenOrCreate,
FileAccess.ReadWrite);
for (int i = 1; i <= 20; i++) {
F.WriteByte((byte)i);
}
F.Position = 0;
for (int i = 0; i <= 20; i++) {
Console.Write(F.ReadByte() + " ");
}
F.Close();
Console.ReadKey();
}
}
}
Cuando se compila y ejecuta el código anterior, produce el siguiente resultado:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 -1
Operaciones de archivo avanzadas en C #
El ejemplo anterior proporciona operaciones de archivo simples en C #. Sin embargo, para utilizar los inmensos poderes de las clases C # System.IO, necesita conocer las propiedades y métodos de uso común de estas clases.
No Señor. | Tema Descripción |
---|---|
1 | Leer y escribir en archivos de texto
Implica leer y escribir en archivos de texto. losStreamReader y StreamWriter la clase ayuda a lograrlo. |
2 | Leer y escribir en archivos binarios
Implica leer y escribir en archivos binarios. losBinaryReader y BinaryWriter la clase ayuda a lograr esto. |
3 | Manipular el sistema de archivos de Windows
Le da a un programador de C # la capacidad de buscar y localizar archivos y directorios de Windows. |