PDF de programación - Tema 10 - Archivos de datos

Imágen de pdf Tema 10 - Archivos de datos

Tema 10 - Archivos de datosgráfica de visualizaciones

Publicado el 5 de Julio del 2019
598 visualizaciones desde el 5 de Julio del 2019
394,4 KB
52 paginas
Creado hace 12a (01/12/2011)
Tema 10
d d

A hi
Archivos de datos

Fundamentos de Informática

Índice

• Introducción

• Operaciones básicas con archivos
Operaciones básicas con archivos

• Tipos de Archivos
• Tipos de Archivos

• Archivos de texto
t

A hi

d t

• Archivos binarios

Departamento de Sistemas Informáticos
Escuela Técnica Superior de Ingeniería ICAI

Tema 1:  Introducción. Arquitectura básica y Sistemas Operativos

2

11

• Introducción

Departamento de Sistemas Informáticos
Escuela Técnica Superior de Ingeniería ICAI

Tema 1:  Introducción. Arquitectura básica y Sistemas Operativos

3

Archivos

Un archivo es un conjunto de información que se almacena en un ordenador y puede ser
identificado por su ruta completa, cuyo fin ultimo es guardar o proporcionar información.
Utilizaremos archivos secuenciales.
La memoria RAMRAM se borra en cuanto se corta la corriente.

Es necesario un sistema de almacenamiento secundario.

Los archivos se almacenan en dispositivos de almacenamiento como el disco duro,
diskette, CD ROM, …
El manejo de los sistemas de almacenamiento de los archi os es gestionado por el sistema
El manejo de los sistemas de almacenamiento de los archivos es gestionado por el sistema
operativo.

Carpetas

Archivos

Departamento de Sistemas Informáticos
Escuela Técnica Superior de Ingeniería ICAI

Tema 1:  Introducción. Arquitectura básica y Sistemas Operativos

4

Archivos

• Hasta ahora los programas han tomado y devuelto datos de: 

• teclado ‐ pantalla
• teclado ‐ pantalla.

• Una operación de lectura de un fichero es parecida a una operación 

• Una operación de escritura de un fichero es parecida a una 

ió d

fi h

id

de lectura de datos desde el teclado
U
operación de escritura en pantalla.
• Utilizaremos archivos secuenciales.
• Operaciones con archivos:

d

i

– Apertura de archivos: fopen()
– Cierre de archivos: fclose()
Cierre de archivos: fclose()
– Lectura de archivos: fscanf () (texto), fread() (binarios)
– Escritura en archivos: fprintf () (texto), fprintf() (binarios)

Departamento de Sistemas Informáticos
Escuela Técnica Superior de Ingeniería ICAI

Tema 1:  Introducción. Arquitectura básica y Sistemas Operativos

5

22

Operaciones básicas con archivos

Departamento de Sistemas Informáticos
Escuela Técnica Superior de Ingeniería ICAI

Tema 1:  Introducción. Arquitectura básica y Sistemas Operativos

6

Operaciones básicas con archivos

• Diferencias con el manejo de pantalla y teclado:

– Es necesario establecer un área de buffer.

• Este área almacena la información mientras se está transfiriendo
• Este área almacena la información mientras se está transfiriendo 

hacia o desde el fichero.

– Para apuntar a esa área de buffer se utiliza la siguiente declaración:

FILE *punt_fichero;

– Donde:

• FILE es un tipo especial de estructura que establece el área del
FILE es un tipo especial de estructura que establece el área del 
buffer. Contiene toda la información que necesitan el resto de 
funciones que trabajan con archivos, como el modo del archivo, los 
buffers del archivo, errores ...

,

– Incluida en stdio.h

• punt_fichero es una variable de tipo puntero que apunta al 
l

i bl d ti

t fi h

comienzo del área del buffer.

t

t

Departamento de Sistemas Informáticos
Escuela Técnica Superior de Ingeniería ICAI

Tema 1:  Introducción. Arquitectura básica y Sistemas Operativos

7

Operaciones básicas con archivos
p
– Siempre antes de realizar cualquier operación con un fichero.

• Apertura de un archivo: fopen()
p ()

li

• Una vez abierto el fichero, y hasta que éste se cierre, se pueden 
l

realizar tantas operaciones como se deseen sin necesidad de volver 
a abrirlo.
j

– El objetivo de abrir un fichero es:

id d d

d

i

i

• Asociar el nombre del archivo “físico” con el área del buffer.
• Especificar el uso que se le va a dar al fichero (lectura, escritura, 

t

l
it
lectura‐escritura, en modo texto, binario ...).
Memoria Interna

t bi

d t

i

) Memoria Externa

Canal físico

Programa

Buffer

Canal lógico

Departamento de Sistemas Informáticos
Registro buffer:  espacio de memoria interna que reserva el sistema para el intercambio de registros entre el archivo y el programa.
Escuela Técnica Superior de Ingeniería ICAI

Tema 1:  Introducción. Arquitectura básica y Sistemas Operativos

8

Operaciones básicas con archivos

• Apertura de un archivo: fopen()

– Prototipo de la función:
FILE *fopen (char * nombre_completo_archivo, char *modo);

• nombre_completo_archivo (cadena de caracteres): es el nombre 

del archivo físico sobre el que queremos trabajar.
del archivo físico sobre el que queremos trabajar.

– Incluyendo el camino completo y la unidad en caso de que 

fuera necesario.

• modo (cadena de caracteres): indica el uso que vamos a hacer del 

fichero o archivo (ver la siguiente transparencia)
• El valor de retorno de fopen():
El valor de retorno de fopen():

– Éxito: El puntero al comienzo del área del buffer.
– Fracaso: devuelve NULL si no se pudiera abrir el fichero.

Departamento de Sistemas Informáticos
Escuela Técnica Superior de Ingeniería ICAI

Tema 1:  Introducción. Arquitectura básica y Sistemas Operativos

9

– “r”

– “w”

– “a”

– “r+”

– “w+”

– “a+”

– ‘b’

escritura).
)

it

uno nuevo.

» Abre un nuevo archivo solo para escritura. En caso de existir un archivo con ese

Ab
nombre, lo borra y crea un nuevo archivo vacío.

hi

hi

E

d

l

i

i

i

» Abre un archivo para añadir. Si el archivo no existe crea uno nuevo, pero si
hi
existe no borra su contenido. Se posiciona al final del archivo de forma que
sucesivas escrituras se añaden al final del archivo original.

id S

l d l

d f

l fi

i t

i i

b

t

» Abre un archivo existente para actualizarlo (tanto para lectura como para

» Abre un archivo nuevo para lectura y escritura. Si existiera un archivo con ese

nombre, lo borra y crea un nuevo archivo vacío.

» Abre un archivo existente para leer y añadir. Si no existiera el archivo se creará

Operaciones básicas con archivos



Apertura de un archivo: Modo
Apertura de un archivo: Modo

» Abre un archivo existente solo para lectura.

» Hay que añadirle a cualquiera de los modos anteriores cuando se esté trabajando

con datos binarios.

Departamento de Sistemas Informáticos
Escuela Técnica Superior de Ingeniería ICAI

Tema 1:  Introducción. Arquitectura básica y Sistemas Operativos

10

Operaciones básicas con archivos

Ejemplo

Función fopen(). Apertura para leer y escribir.

#include <stdio h>
#include <stdio.h>
...
int main(void){
FILE *pfich;
...
pfich=fopen(“c:\\temp\\pepe.txt”,“r+”);/*Apertura*/
if(pfich==NULL){ /*Comprobamos apertura*/
}
...
return 0;

printf(“Error: No se puede abrir el archivo.\n”);

}

Departamento de Sistemas Informáticos
Escuela Técnica Superior de Ingeniería ICAI

Tema 1:  Introducción. Arquitectura básica y Sistemas Operativos

11

Operaciones básicas con archivos

• Cierre de un archivo: fclose()

– Su objetivo es liberar el espacio del área del buffer
Su objetivo es liberar el espacio del área del buffer.
– Se escriben a disco todos los datos que aún queden en el buffer, se 

“desconecta” el archivo del programa y se libera el puntero al archivo.
– Es obligatorio cerrar un fichero cuando se haya terminado con su uso 

dentro del programa.
– Siempre que queramos cambiar la forma de acceso al fichero (modo)
Siempre que queramos cambiar la forma de acceso al fichero (modo), 
también será necesario cerrarlo y volverlo a abrir especificando el 
nuevo tipo de acceso para el manejo del fichero.

• Un fichero no puede abrirse mas de una vez sin antes haberlo 

h b l

d

f h
cerrado.

d

b

Departamento de Sistemas Informáticos
Escuela Técnica Superior de Ingeniería ICAI

Tema 1:  Introducción. Arquitectura básica y Sistemas Operativos

12

Operaciones básicas con archivos

• Cierre de un archivo fclose()
• Cierre de un archivo: fclose()
– Prototipo de la función:

(

int fclose(FILE *puntero al archivo);
);
• puntero_al_archivo: es el puntero a archivo devuelto por la función 

_ _

p

l

l

f

l

d

ó

fopen() al abrir el archivo que se desea cerrar.
l

• El valor devuelto por la función es:
0: si el archivo se cerró con éxito, 
‐1: si ocurrió algún tipo de error al cerrarlo
1: si ocurrió algún tipo de error al cerrarlo 
Independientemente del valor de retorno, el archivo se cierra.
Un error típico es que el disco se ha llenado y no se ha podido vaciar 

el buffer con la consiguiente pérdida de datos

Ejemplo

Función fclose(). Cierre fichero “pepe.txt” ejemplo anterior.

if(fclose(pfich)!=0){

printf(“Error al cerrar el archivo\n”);
printf( Error al cerrar el archivo\n );
printf(“Posible pérdida de datos”);

}

Departamento de Sistemas Informáticos
Escuela Técnica Superior de Ingeniería ICAI

Tema 1:  Introducción. Arquitectura básica y Sistemas Operativos

13

Operaciones básicas con archivos

#include <stdio.h>
int main(void)
{

FILE *pfich;

Declaración de un
Declaración de un
puntero a archivo

Apertura en modo escritura
(w) del archivo “datos.txt”

Comprobación de que la
apertura ha sido correcta
t

id

t

h

Cierre del archivo y comprobación de si
Cierre del archivo y comprobación de si
se ha realizado correctamente

pfich = fopen(“datos.txt”,”w”);

if (pfich == NULL) {
) {

(p

printf(“\n Error al abrir el fichero”);

}
... /* Se utiliza el archivo para escritura */
... /  Se utiliza el archivo para escritura  /
/* Al acabar de usar el archivo */
if (fclose(pfich) != 0) {

printf(”\n Error al cerrar el archivo “);
printf( \n Error al cerrar el archivo  );

}
return 0;

}
}

Departamento de Sistemas Informáticos
Escuela Técnica Superior de Ingeniería ICAI

Tema 1:  Introducción. Arquitectura básica y Sistemas Operativos

14

33

Tipos de archivos

Departamento de Sistemas Informáticos
Escuela Técnica Superior de Ingeniería ICAI

Tema 1:  Introducción. Arquitectura básica y Sistemas Operativos

15

Tipos de archivos

• Tipos de archivo:

– Texto.

• Archivos ASCII planos, obtenidos y manejados desde programa
  • Links de descarga
http://lwp-l.com/pdf16238

Comentarios de: Tema 10 - Archivos de datos (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad