Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Tulio Mamani
Gestion de almacenamiento no volatil
El SO es responsable de:
Archivos
Nombre
Tipo
Ubicación en el dispositivo
Tamaño
Información de Protección
Crear Archivos
Borrar Archivos
Renombrar Archivos
Listar un Directorio
Asignación Enlazada
Cada fichero es una lista enlazada de bloques de
disco
• Entrada de directorio contiene:
• Puntero al primer y último bloque del archivo
fgetc/ fputc
Esta función lee un caracter a la vez del archivo que esta siendo
señalado con el puntero *archivo. En caso de que la lectura sea exitosa
devuelve el caracter leído y en caso de que no lo sea o de encontrar el
final del archivo devuelve EOF.
El prototipo es:
fgets,fputs
El prototipo es:
char fgets(char *s,int n,FILE *archivo);
char fputs(char *s,FILE *archivo);
La función fgets leerá hasta n-1 caracteres o hasta que lea un cambio
de línea '\n' o un final de archivo EOF.
Control de inicio fin del archivo
#include <stdio.h>
#include <stdlib.h>
int main()
{
FILE *archivo;
archivo= fopen ( "MEC230.dat", "r" );
if (archivo==NULL)
{
fputs ("ERROR AL ENCONTRAR ARCHIVO MEC230.dat",stderr);
exit (1);
}
fclose ( archivo);
return 0;
}
Ejemplo 2
Escribir un programa que permita recorrer el archivo "prueba.txt"
#include <stdio.h>
#include <stdlib.h>
int main()
{
FILE *archivo;
archivo= fopen ( "MEC230.dat", "r" );
if (archivo==NULL)
{
fputs ("ERROR AL ENCONTRAR ARCHIVO MEC230.dat",stderr);
exit (1);
}
fclose ( archivo);
return 0;
}
Ejemplo 3
Escribir un programa que permita recorrer el archivo "prueba.txt“
usando fgets
#include <stdio.h>
#include <stdlib.h>
int main()
{
FILE *archivo;
char cadena[100];
int contLect=0;
archivo = fopen("prueba.txt","r");
if (archivo == NULL)
{
printf("\n EL ARCHIVO NO EXISTE\n\n");
exit(1);
}
Ejemplo 3
Escribir un programa que permita recorrer el archivo "prueba.txt“
usando fgets
else
{
printf("\nEl contenido del archivo de prueba es
\n\n");
while (feof(archivo) == 0)
{
fgets(cadena,5,archivo);
printf("%s",cadena);
contLect++;
}
printf("\n\n Nro de lecturas del archivo:
%d\n",contLect);
system("PAUSE");
}
fclose(archivo);
return 0;
}