varios

Páginas: 6 (1347 palabras) Publicado: 20 de noviembre de 2013
Manejo de Archivos en C#
La manera de almacenar y recuperar información que perdure en el tiempo se
basa en el uso de “memoria secundaria”, compuesta esencialmente por discos
(diskettes, discos duros, CD, DVD, etc.) y ocasionalmente cintas. En cualquiera de
estos medios, la unidad de almacenamiento de información se denomina archivo.

Streams
La lectura y escritura a un archivo son hechasusando un concepto genérico
llamado stream. La idea detrás del stream existe hace tiempo, cuando los datos
son pensados como una transferencia de un punto a otro, es decir, como un flujo
de datos. En el ambiente .NET se puede encontrar muchas clases que
representan este concepto que trabaja con archivos o con datos de memoria
(como se muestra en la figura de abajo).

Figura 1. Clases delFramework .NET para el uso de Streams.
Un stream es como se denomina a un objeto utilizado para transferir datos. Estos
datos pueden ser transferidos en dos posibles direcciones:
- Si los datos son transferidos desde una fuente externa al programa, entonces se
habla de “leer desde el stream”.
- Si los datos son transferidos desde el programa a alguna fuente externa,
entonces se habla de“escribir al stream”.

Frecuentemente, la fuente externa será un archivo, pero eso no necesariamente
es el caso, por lo que el concepto es utilizado ampliamente con fuentes de
información externas de diversos tipos. Algunas otras posibilidades fuera de los
archivos incluyen:
- Leer o escribir datos a una red utilizando algún protocolo de red, donde la
intención es que estos datos sean recibidos oenviados por otro computador.
- Lectura o escritura a un área de memoria.
- La Consola
- La Impresora
- Otros ...
Algunas clases que C# provee para resolver este acceso a fuentes diversas
incluyen las clases de tipo: Reader y Writer.

BufferedStream
Esta clase se utiliza para leer y para escribir a otro stream.
El uso de streams para la lectura y escritura de archivo es directa perolenta. Por
esta razón la clase BufferedStream existe y es más eficiente. Puede ser utilizado
por cualquier clase de stream. Para operaciones de archivo es posible utilizar
FileStream, donde el buffering está ya incluido.
Las clases más relacionadas con la escritura y lectura de archivos (File
Input/Output o File I/O) son:
• FileStream, cuyo propósito es lectura y escritura de datos binarios (node
texto legible), a cualquier archivo de tipo binario, aunque se puede utilizar
para acceder a cualquier tipo de archivo, inclusive los de texto.
• StreamReader y StreamWriter, las cuales están diseñadas para lectura y
escritura de archivos de texto. Estas clases se asumen como de un nivel
más alto que FileStream.
Una observación acerca de la declaración de nombres/rutas de archivos en C#.Usualmente, la ruta de un archivo contiene el carácter ‘\’, que en C# se utiliza
como caracter de control para símbolos especiales (como el cambio de línea: ‘\n’).
Sin embargo, entendiendo que no es el mismo sentido el que se le quiere dar en la
interpretación
de
rutas
de
archivos
(por
ej:
“C:\Mis
documentos\Programas\ejemplo.cs”), se utiliza una sintaxis particular,
anteponiendo elsímbolo ‘@’ antes del string con la ruta del archivo. Es decir:

string rutaarchivo = @”C:\Temp\archivo.txt”;
Esta declaración evita la interpretación de los dos caracteres ‘\’ como símbolos
especiales y el string queda correctamente inicializado.

Using System.IO
Para el uso de estas clases, es necesario referenciar el uso del namespace
System.IO, ya que System no contiene los elementospara el manejo de archivos.
Por ello, los programas con acceso a archivos deben incluir la línea:
using System.IO;

Constructores de StreamReader
El más simple de los constructores toma sólo el nombre/ruta del archivo a abrir
para lectura:
StreamReader sr = new StreamReader(@”C:\Temp\archivo.txt”);
Sin embargo, reconociendo que hoy existen diferentes formatos (codificaciones)
de...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Variado
  • Varios
  • Varios
  • Varios
  • Variados
  • Varios
  • Varios
  • Varios

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS