Ficheros
Desde el punto de vista del hardware , en el mundo existen diferentes dispositivos para almacenar información de forma permanente discos duros, unidades de CD,memorias USB,etc. Para un programador el dispositivo físico que use le carece de importancia.
Los prograas deben funcionar tanto si la información esta en un disco duro como en un CD como en un disco duro. Por lo tanto , es preciso un conjunto de funciones o librerías que permitan realizar este almacenamiento permanente de información.
Existen dos tipos fundamentales de ficheros, ficheros de texto y ficheros binarios. En los ficheros de texto la información se almacena usando caracteres ASCII .Por ejemplo , una variable de tipo int se almacena en la memoria como una secuencia de bits que debe ser interpretada como un código complemento a dos.Sin embargo cuando escribimos dicha variable en un fichero de texto lo que almacenamos es un conjunto de caracteres que representan el valor de la variable en base 10.
Abrir y cerrar ficheros
La cabecera de la función fopen es la siguiente:
FILE *fopen(char nombrefichero[ ], char modo acceso [ ])
donde la variable nombrefichero es una cadena de caracteres con el nombre del fichero fisico que se quiere usar y modo acceso es una cadena de caracteres que indica la acción que realizaremos sobre el ficheros.
Existen tres modos básicos:
" r " Abrir un fichero ya existente
" w " Abrir un fichero nuevo para escirtura. Si el ficheros existe lo destruye y lo crea de nuevo
" a " Abrir un fichero existente para añadir informacion, esto es , escribir al final del mismo. Si el fichero no existía se creará uno nuevo.
Además de estos modos existen otros de uso menos frecuente:
"r+": Abrir un fichero ya existente tanto para lectura como escritura.
"w+": Abrir un fichero nuevo tanto para lectura como escritura. Si el fichero ya exist´ıa ser´a
destruido y creado de nuevo.
"a+": Abrir un fichero ya existente para leer y a˜nadir. Si el fichero no exist´ıa se crear´a uno
nuevo.
La funci´on fopen retorna la constante NULL si no ha podido abrir el fichero. Esta condici´on de
error debe ser comprobada siempre que se use la funci´on fopen. La constante NULL est´a definida
en stdio.h.
Cuando ya hemos acabado de utilizar el fichero, debemos indic´arselo al sistema operativo mediante
la funci´on fclose, que libera la variable de tipo FILE asociada al fichero. La cabecera de la funci´on
fclose es la siguiente:
int fclose (FILE *fp)
Si no se produce ning´un error al cerrar el fichero fclose retorna 0. En caso contrario retorna la
constante EOF (recordemos que esta constante est´a definida en stdio.h). Veamos algunos ejemplos
del uso de fopen y fclose.
#include <stdio.h>
void main( )
{
FILE *fp;
fp = fopen( "miFichero.txt", "r" );
if (fp == NULL)
{
printf( "Error abriendo miFichero.txtnn" );
exit(0);
}
. . .
/* Aqu´ı podemos leer datos del fichero */
. . .
fclose( fp );
}
Comentarios
Publicar un comentario
Hola que tal,dime tu opinión