Leer varias lineas de texto.

Lenguaje C

un ejemplo de programa en lenguaje C que utiliza el comando fscanf() para leer varias líneas de texto desde un archivo de texto:

#include <stdio.h>

int main() {
    FILE *archivo;
    char linea[100];

    archivo = fopen("archivo.txt", "r"); // Abrir el archivo en modo de lectura
    if (archivo == NULL) { // Verificar si hubo algún error al abrir el archivo
        printf("Error al abrir el archivo.\n");
        return 1;
    }

    // Leer cada línea del archivo hasta llegar al final
    while (fscanf(archivo, "%99[^\n]\n", linea) != EOF) {
        printf("%s\n", linea); // Imprimir la línea leída
    }

    fclose(archivo); // Cerrar el archivo
    return 0;
}

Este programa también utiliza la función fopen() para abrir un archivo llamado «archivo.txt» en modo de lectura. Si el archivo no se puede abrir, el programa imprimirá un mensaje de error y finalizará. Luego, el programa utiliza un ciclo while para leer cada línea del archivo utilizando el comando fscanf(). En este caso, fscanf() lee cada línea utilizando el formato "%99[^\n]\n", el cual indica que se debe leer hasta 99 caracteres que no sean el carácter de nueva línea (\n). El segundo \n indica que fscanf() debe leer y descartar el carácter de nueva línea al final de cada línea.

El comando fscanf() devuelve el número de elementos que se leyeron exitosamente, o EOF si se llegó al final del archivo. Por lo tanto, el ciclo while seguirá ejecutándose mientras no se llegue al final del archivo (fscanf() no devuelve EOF). Si la función fscanf() devuelve un número distinto de 1, significa que hubo algún error al leer la línea y se sale del ciclo. De lo contrario, el programa imprime la línea leída utilizando printf(). Finalmente, el programa cierra el archivo utilizando fclose().

Puede que también te guste...

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *