Publicado el 17 de Febrero del 2019
1.658 visualizaciones desde el 17 de Febrero del 2019
854,9 KB
23 paginas
Creado hace 5a (15/08/2018)
Programación Orientada a Objetos en C# .NET
CAPÍTULO 9
A R C H I V O S
(FLUJOS)
2
Ing. Bruno López Takeyas, M.C.
http://www.itnuevolaredo.edu.mx/Takeyas
1
Programación Orientada a Objetos en C# .NET
Preguntas detonadoras
¿Por qué una aplicación que almacena los datos en memoria los
pierde cuando se termina o cuando se apaga el equipo de
cómputo?
¿Qué ventajas y desventajas ofrece una aplicación que
solamente almacena datos en la memoria principal?
¿Cómo se puede almacenar datos de manera permanente?
¿Qué son los archivos y cómo se clasifican?
¿Un archivo procesa datos?
¿Se le puede definir cualquier nombre y extensión a un archivo?
3
Preguntas detonadoras
Si se define la extensión de un archivo como jpg, ¿entonces el archivo
almacena de manera automática una imagen o fotografía que pueda ser
visualizada mediante software comercial con este propósito?
¿Cuáles con las operaciones internas que se pueden realizar con
archivos?
¿Se puede eliminar internamente un dato almacenado en el archivo?
¿Cuáles con las operaciones externas que se pueden realizar con
archivos?
¿Qué es y para qué sirve un flujo?
¿Qué se requiere agregar a una aplicación para que administre datos en
archivos?
¿Cuáles son las clases necesarias para administrar archivos en una
aplicación?
¿Se pueden almacenar objetos en un archivo? ¿Cómo?
4
Ing. Bruno López Takeyas, M.C.
http://www.itnuevolaredo.edu.mx/Takeyas
2
Programación Orientada a Objetos en C# .NET
¿Por qué usar archivos?
Algunos programas solamente manejan
datos volátiles almacenados en la
memoria principal.
Necesidad
de
almacenar
permanentemente los datos.
Conservar los datos al salir de la
aplicación y/o apagar la computadora.
Relación entre la memoria y los
dispositivos de almacenamiento
secundario
5
6
Ing. Bruno López Takeyas, M.C.
http://www.itnuevolaredo.edu.mx/Takeyas
3
Programación Orientada a Objetos en C# .NET
Archivos (flujos)
Algunos
autores
los
identifican
también con el nombre de flujos
Sirven como contenedores de datos
en un dispositivo de almacenamiento
secundario
Definiciones relacionadas con
archivos
7
8
Ing. Bruno López Takeyas, M.C.
http://www.itnuevolaredo.edu.mx/Takeyas
4
Programación Orientada a Objetos en C# .NET
Representación de un archivo
Tipos de archivos
Tipos de
archivos
de acuerdo
a su contenido
• De texto
• Binarios
9
10
Ing. Bruno López Takeyas, M.C.
http://www.itnuevolaredo.edu.mx/Takeyas
5
Programación Orientada a Objetos en C# .NET
Tipos de archivos
Tipos de
archivos
de acuerdo
al modo de
acceso
• Secuenciales
• Relativos (de
acceso directo)
Archivos secuenciales
11
12
Ing. Bruno López Takeyas, M.C.
http://www.itnuevolaredo.edu.mx/Takeyas
6
Programación Orientada a Objetos en C# .NET
Archivos relativos (de acceso
directo)
13
Archivo vs. archivero
Operación o acción
Archivero
Archivo
computacional
Identificar la localización
de la información
Localizando el archivero
Identificando la base de
en particular que
datos correspondiente a
contiene las carpetas con
la información que se
la información que se
solicita. Una base de
solicita, ya que una
datos es una colección
oficina puede tener
de archivos
varios archiveros
relacionados. P. Ejem.
debidamente clasificados
Profesores, estudiantes
e identificados
y materias están
correlacionados.
14
Ing. Bruno López Takeyas, M.C.
http://www.itnuevolaredo.edu.mx/Takeyas
7
Programación Orientada a Objetos en C# .NET
Archivo vs. archivero
Operación o acción
Archivero
Archivo
computacional
Identificar el lugar exacto
Regularmente un
Se recomienda que los
donde se encuentra la
archivero contiene varios
archivos contengan
información
cajones, cada uno con
datos relacionados con
información debidamente
un objeto de interés en
clasificada y ordenada.
particular y no de
varios. P. Ejem. Sólo
datos de estudiantes.
15
Archivo vs. archivero
Operación o acción
Archivero
Archivo
computacional
Operaciones
En un archivero se
Básicamente un archivo
pueden agregar, extraer
solo tiene 2 operaciones
o cambiar documentos
para el manejo de sus
de las carpetas.
registros:
• Lectura
• Escritura
Las demás operaciones
se realizan como
consecuencia de éstas.
16
Ing. Bruno López Takeyas, M.C.
http://www.itnuevolaredo.edu.mx/Takeyas
8
Programación Orientada a Objetos en C# .NET
Archivo vs. archivero
Operación o acción
Archivero
Archivo
computacional
Apertura
Obviamente cuando se
Para accesar los datos
requiere agregar o
de un archivo es
consultar carpetas del
necesario abrirlo.
cajón de un archivero, es
Existen varios modos
necesario primero abrirlo.
de apertura de los
archivos dependiendo
de las operaciones que
se deseen realizar en
él.
17
Archivo vs. archivero
Operación o acción
Archivero
Archivo
Clasificación de los datos Los cajones de los
archiveros tienen
computacional
Los datos pueden ser
almacenados de muchas
separadores o pequeñas
formas diferentes en los
pestañas para identificar las
archivos y de esto depende
carpetas. Estas facilitan el
la facilidad (o dificultad)
acceso, ya sea la inserción
que el archivo muestre
o la extracción de un
para ciertas operaciones
carpeta en particular.
de acceso. A estas formas
de almacenamiento se les
conoce como “organización
del archivo”.
18
Ing. Bruno López Takeyas, M.C.
http://www.itnuevolaredo.edu.mx/Takeyas
9
Programación Orientada a Objetos en C# .NET
Archivo vs. archivero
Operación o acción
Archivero
Archivo
computacional
Cierre
Cuando ya no se
Cuando se termina
desea utilizar un cajón
de utilizar un archivo
de un archivero es
es necesario cerrarlo.
necesario cerrarlo, ya
De esa forma se
que de no hacerlo, se
vacía la memoria
corre el riesgo de
caché y se asegura
dañar o perder la
almacenar y proteger
información.
los datos.
19
Archivo vs. archivero
Operación o acción
Archivero
Archivo
computacional
Seguridad
Algunos gabinetes de
El sistema operativo
los archiveros cuentan
puede controlar
con un candado de
permisos de acceso a
seguridad.
diferentes tipos de
usuarios
20
Ing. Bruno López Takeyas, M.C.
http://www.itnuevolaredo.edu.mx/Takeyas
10
Programación Orientada a Objetos en C# .NET
Definiendo el nombre del archivo
Declarar una variable de tipo string
para almacenar el nombre del archivo
(incluyendo la ruta de acceso)
Usar doble diagonal para separar las
carpetas de la ruta
Usar una cadena verbatim (identificada
por el símbolo @)
21
Ejemplos de nombres de archivos
Mediante una cadena normal:
string NombreArchivo =
"c:\\Datos\\NoSirven\\Archivo.txt";
Mediante una cadena verbatim:
public string NombreArchivo2 =
@"c:\MisDatos\Ejemplo.txt";
22
Ing. Bruno López Takeyas, M.C.
http://www.itnuevolaredo.edu.mx/Takeyas
11
Programación Orientada a Objetos en C# .NET
Algunas extensiones de nombres de
archivos
Extensión
.exe
.bat
.jpg,
.bmp,
Descripción
Archivo binario con una aplicación ejecutable.
Archivo de texto de procesamiento por
comandos ejecutables por el sistema operativo.
Archivos binarios con imágenes o fotografías
lotes con
.gif, .tif
.mpg, .avi Archivos binarios con video
.mp3, .wav Archivos binarios con audio
.htm,
.html
.doc
.xls
.ppt
.txt
Archivos de texto con páginas web
Archivo binario con un documento de Microsoft Word
Archivo binario con un documento de Microsoft Excel
Archivo binario con un documento de Microsoft Power
Point
Archivo de texto sin formato
23
Extensiones de nombres de archivos
Aunque el programador puede asignar
cualquier nombre y extensión a un archivo, se
recomienda que les coloque nombres
relevantes de acuerdo a su contenido y el
hecho de asignarle una extensión particular,
no convierte al archivo al formato de la
aplicación por defecto para dicha extensión.
24
Ing. Bruno López Takeyas, M.C.
http://www.itnuevolaredo.edu.mx/Takeyas
12
Programación Orientada a Objetos en C# .NET
Flujos
Para almacenar o consultar datos en un
archivo es necesario establecer un canal de
comunicación.
Este canal se conoce como flujo (stream
en inglés).
Este canal es un mensajero entre la
aplicación y el archivo ubicado en un
dispositivo de almacenamiento secundario
(disco duro, memoria USB, CD, etc.)
25
Flujo (stream)
Flujo para que la
aplicación grabe datos
Flujo para que la
aplicación lea datos
Archivo ubicado en un
dispositivo de
almacenamiento
secundario
26
Ing. Bruno López Takeyas, M.C.
http://www.itnuevolaredo.edu.mx/Takeyas
13
Programación Orientada a Objetos en C# .NET
Operaciones con archivos
Operaciones
con
archivos
• Lectura
• Escritura
Apertura de archivos
27
28
Ing. Bruno López Takeyas, M.C.
http://www.itnuevolaredo.edu.mx/Takeyas
14
Programación Orientada a Objetos en C# .NET
Actividades para grabar datos en un
archivo
Orden Actividad
1
Abrir el
archivo
2
3
Escribir
Cerrar
Acciones
Abrir un flujo en modo de escritura
hacia el archivo. Si el archivo no
existe, entonces debe crearse.
Grabar el dato en el archivo (por
medio del flujo)
Cerrar el archivo (por medio del
flujo)
Actividades para leer datos de un
archivo
Orden Actividad
1
Abrir el
archivo
2
3
Leer
Cerrar
Acciones
Abrir un flujo en modo de lectura
hacia el archivo. Asegurarse que el
archivo exista.
Leer datos hasta llegar al final del
archivo.
Cerrar el archivo (por medio del
flujo)
29
30
Ing. Bruno López Takeyas, M.C.
http://www.itnuevolaredo.edu.mx/Takeyas
15
Programación Orientada a Objetos en C# .NET
Espacio de nombres requerido
using System.IO;
// Para el uso de archivos
Algunas clases de System.IO
Comentarios de: 09a.- Archivos - Programación Orientada a Objetos en C# .NET (0)
No hay comentarios