sábado, 8 de enero de 2022

Uso del fread, fscanf y escritura de un archivo en C

 fread

Su estructura es:

size_t fread ( void * ptr, size_t size, size_t count, FILE * stream );

Esta función lee un bloque de una "stream" de datos. Efectúa la lectura de un arreglo de
elementos "count", cada uno de los cuales tiene un tamaño definido por "size". Luego los
guarda en el bloque de memoria especificado por "ptr". El indicador de posición de la
cadena de caracteres avanza hasta leer la totalidad de bytes. Si esto es exitoso la cantidad
de bytes leídos es (size*count).

PARAMETROS:

  • ptr : Puntero a un bloque de memoria con un tamaño mínimo de (size*count) bytes.
  • size : Tamaño en bytes de cada elemento (de los que voy a leer).
  • count : Número de elementos, los cuales tienen un tamaño "size".
  • stream: Puntero a objetos FILE, que especifica la cadena de entrada.

fscanf


La función fscanf funciona igual que scanf en cuanto a parámetros, pero la entrada se
toma de un fichero en lugar del teclado.

El prototipo correspondiente de fscanf es:

int fscanf(FILE *fichero, const char *formato, argumento, ...);

Podemos ver un ejemplo de su uso, abrimos el documento "fichero.txt" en modo lectura
y leyendo dentro de el.

#include
<stdio.h>

int main ( int argc, char **argv ) {
    FILE *fp;
    char buffer[100];

    fp = fopen ( "fichero.txt", "r" );
    fscanf(fp, "%s" ,buffer);
    printf("%s",buffer);

    fclose ( fp );
return 0;

}

Escritura en archivos:

Así como podemos leer datos desde un fichero, también se pueden crear y escribir
ficheros con la información que deseamos almacenar, Para trabajar con los archivos
existen diferentes formas y diferentes funciones. Las funciones que podríamos usar para
escribir dentro de un archivo son:

  • int fputc(int caracter, FILE *archivo)
  • int fputs(const char *buffer, FILE *archivo)
  • size_t fwrite(void *puntero, size_t tamano, size_t cantidad, FILE *archivo);
  • int fprintf(FILE *archivo, const char *formato, argumento, ...);

No hay comentarios:

Publicar un comentario

Uso del fwrite y el fprintf

  fwrite Esta función está pensada para trabajar con registros de longitud constante y forma pareja con fread. Es capaz de escribir hacia un...