Sie sind auf Seite 1von 0

UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS

FACULTAD DE INGENIERIA DE SISTEMAS E INFORMATICA


Archivos en C
El Almacenamiento de datos en estructuras de datos vistas anteriormente solo se generan temporalmente,
es decir, cuando termina el programa los datos se pierden. Para ello, una forma de no perderlos y
recuperarlos aun cuando el programa termine es con el manejo de Archivos.
C ve cada uno de los archivos simplemente como un grupo secuencial de bytes. Cada archivo termina
con un marcador de fin de archivo o un nmero de bytes especificado registrado en una estructura de
datos.
Las funciones para manipular los Archivos son:

Funcin Descripcin
fopen!" Abre un flujo
fc#ose!" Cierra un flujo
pu$c Escribe un carcter en un flujo
%e$c!" ee un carcter desde un flujo
fpu$s!" Escribe una cadena en un flujo
f%e$s!" !btiene una cadena de un flujo
fsee&!" "alta al byte especificado en un flujo
fprin$f!" #mprime datos con formato en un flujo
fscanf!" ee datos con formato en un flujo
eof!" $evuelve verdadero o falso si se halla el fin del archivo.
Los f#u'os dan canales de comunicaci%n entre el archivo y el programa. Por ejemplo, el flujo de entrada
estndar permite &ue un programa lea datos desde el teclado, el flujo de salida estndar permite &ue un
programa imprima datos en la pantalla. 'n flujo se relaciona con un archivo utili(ando una operaci%n de
apertura y se desliga del archivo con una operaci%n de cierre.
E(is$en ) $ipos *e f#u'os: )e*to y binarios.
El flujo de Texto se utili(a con conversiones de Caracteres. Es decir, puede no haber correspondencia
entre lo &ue se env+a al flujo y lo &ue se escribe en el archivo.
El flujo Binario tiene una correspondencia directa entre lo &ue se env+a y se escribe en el archivo.
'n archivo es el grupo de informaci%n &ue est en una entidad f+sica real &ue recibe los datos, ya sea $$
o dis,ette.
A+rir un Archivo puede ser para varios prop%sitos: lectura, escritura o ambos, por lo &ue se utili(a la
siguiente funci%n para ello:
-#E fopen.char /f,char /modo01 &ue es lo mismo &ue
Pgina 2 de 3
fopen !No,+re *e# Archivo- Mo*o".
os modos de Abrir al archivo se especifican en la siguiente tabla:
Acceso Descripcin/
0r0 Abre un archivo para lectura. El archivo debe de e*istir
010 Abre para escritura. "i el archivo no e*iste se crea, pero si e*iste se borra su informaci%n
para crearla de nuevo.
0a0 Abre para escribir al final de el. "i el archivo no e*iste se crea.
0r20 Abre para Escritura4ectura. El archivo debe e*istir.
0120 Abre para Escritura4ectura. "i el archivo no e*iste se crea, pero si e*iste su informaci%n
se destruye para crearla de nuevo.
0a20 Abre para escribir al final de el y leer. "i el archivo no e*iste se crea.
0r+0 Abre un archivo binario para lectura. El archivo debe e*istir.
01+0 Abre un archivo binario para escritura. "i el archivo no e*iste se crea, pero si e*iste su
informaci%n se destruye para crearla de nuevo.
0a+0 "e abre un archivo binario para escribir al final de el. "i el archivo no e*iste se crea.
0r+20 Abre un archivo binario para lectura4Escritura. El archivo debe e*istir
01+20 Abre un archivo binario para lectura4escritura. "i el archivo no e*iste se crea, pero si
e*iste su informaci%n se destruye para crearla de nuevo.
0a+20 Abre un archivo binario para lectura y a5adir. "i el archivo no e*iste se crea.
Cerrar un Archivo despu6s de trabajar es algo &ue debe de hacerse, si no se hace este se cierra
automticamente cuando finali(a el programa. "e cierra de la siguiente manera:
fc#ose!FILE 3f"
Ejemplo de programa &ue Escribe y lee carcter por carcter de un archivo las instrucciones usadas son
putc y getc. !bserve el manejo de fopen y fclose en los siguientes ejemplos.
#nt putc.int c, -#E/f01 Escribe el carcter c en un archivo apuntado por f
#nt getc.-#E /f01 $evuelve el carcter le+do e incrementa la posici%n actual del indicador del archivo, si
se detecta el fin del archivo se devuelve E!-.
Pgina 7 de 3
-#E /apuntador establece &ue 8apuntador8 es un apuntador a la estructura -#E. a forma de Escribir y
leer la informaci%n por medio de strings es por medio de las instrucciones fgets y fputs.
int fputs.char /cad, -#E /f01Escribe una cadena de caracteres a un archivo apuntado por f.
int fgets.char /cad, int n, -#E /f01 ee una cadena de Caracteres.
Pgina 9 de 3
Las ins$rucciones frea* 4 f1ri$e se utili(an en archivos en el &ue se utili(an estructuras para definir la
longitud de cada registro.
f1ri$e!voi* 3+uffer-si5e6$ nu,6+4$es-si5e6$ n- FILE 3f".
Escribe n registros de longitud num:bytes desde la memoria apuntada por buffer al archivo f.
frea*!voi* 3+uffer-si5e6$ nu,6+4$es-si5e6$ n- FILE 3f".
ee n registros de num:bytes en la memoria apuntada hacia buffer desde el archivo f.
Pgina 3 de 3

Das könnte Ihnen auch gefallen