Archivo de datos

Post on 11-Aug-2015

20 views 0 download

Transcript of Archivo de datos

ARCHIVO DE DATOS EN LENGUAJE C

ARCHIVOS DE DATOS EN LENGUAJE C

Introducción

El almacenamiento en variables y arreglos es

temporal

Existen aplicaciones que deben guardar grandes volúmenes de datos de manera permanente

Se hace necesario el uso de dispositivos de

almacenamiento secundario como archivo de datos

¿QUE ES UN ARCHIVO DE DATOS?

Es una colección de registros relacionados entre sí con aspectos en común y organizados para un propósito específico, por ejemplo el archivo de nomina de x empresa.

Nota: El Lenguaje C está diseñado para manejar los archivos de datos como secuencia (flujo) que son independiente del dispositivo.

¿QUE ES UN FLUJO O SECUENCIA?

Es una abstracción que se refiere a una corriente de datos que fluye (viaja) entre un origen y un destino.

Entre el origen y el destino debe existir una conexión por la cual circulen los datos

Origen

DestinoFlujo de DatosConexión

¿QUE ES UN FLUJO O SECUENCIA?

EJEMPLO: Cuando se realiza una función scanf(“%d”,&nota), se toma el valor introducido desde teclado (origen), se pasa al buffer stdin (conexión) y de hay a la memoria (destino).

Teclado MemorianotaBuffer stdin

PUNTERO FILEEstablecer un área de bufferInformación almacenada temporalmente

El área se establece a través de la siguiente instrucción:

FILE *puntero_archivo;

PUNTERO FILE

FILE *puntero_archivo;

Donde:

FILE, es un tipo especial de estructura que permite establecer el área de buffer.

puntero_archivo, es una variable puntero, que indica el inicio de esta área.

APERTURA DE UN ARCHIVO DE DATOS

Conecta el archivo físico con el programa

La función fopen()

fopen(nombre_archivo, modo);

Donde:nombre_archivo, es una cadena de caracteres que representa el nombre con el cual será referenciado el archivo en el programa.

Modo o tipo de archivo, es una cadena de caracteres que representa cómo será utilizado el archivo.

APERTURA DE UN ARCHIVO DE DATOS

fopen(nombre_archivo, modo);

El modo puede ser una de las cadenas mostradas en la tabla a continuación:Archivos Secuenciales

MODOS DE APERTURA

VALOR DESCRIPCIÓN

r Abre un archivo de texto para lectura.

w Crea un archivo de texto para escritura.

a Abre un archivo de texto para añadir información al final. Sino existe, funciona como w.

r+ Abre un archivo de texto para lectura / escritura.

w+ Crea un archivo de texto para lectura / escritura.

a+ Abre o Crea un archivo de texto para añadir información. al final. Sino existe, funciona como w+

CIERRE DE UN ARCHIVO DE DATOS

La función fclose(), permite cerrar una secuencia vinculada con un archivo.

fclose(nombre_archivo);

CREACION DE UN ARCHIVO

Crear el archivo usando un editor Escribir un programa que introduzca información en

la computadora

getchar (para obtener caracteres de teclado) y putc (para escribir caracteres en un archivo). El uso de putc es el siguiente: putc(variable_de_tipo_caracter,puntero_al_area_de_buffer);

CREACION DE UN ARCHIVO

Usando una orden del sistema operativo tal como type

Usando un editor o escribiendo un programa que lea el contenido y lo muestre.

Para ello se pueden utilizar las funciones getc (para leer caracteres de un archivo) y putchar(para escribir caracteres por pantalla). El uso de getc es: variable_de_tipo_caracter=getc (puntero_al_area_de_buffer);

contienen sólo cadenas de caracteres pueden crearse y leerse fgets y fputs

Tales archivos se pueden procesar usando las funciones fscanf y fprintf:

CREACION DE UN ARCHIVO

fprintf(puntero_area_buffer,cadena_control,argto1,..,argton); fscanf(puntero_area_buffer,cadena_control,&argto1,..,&argton);

La función feof sirve para este propósito (válida para un archivo secuencial con o sin formato).

Esta función devuelve un valor distinto de cero (cierto)

si detecta una condición de fin de archivo y un valor cero (falso) si no se detecta.

CREACION DE UN ARCHIVO