[C con Clase] Guardar cada línea en arrays independientes

Davidson, Steven srd4121 en njit.edu
Mie Feb 28 15:32:47 CET 2018


Hola Laura,

Vas por buen camino. Como has mencionado, necesitas varios arrays
diferentes. Por lo tanto, tienes que definir un array de arrays de 'char'.
Por ejemplo,

char lineas[20][81];
...
for( i = 0; i< 20; i++ )
{
  fgets( lineas[i], 81, fichero );
}

Una vez que tengas cada línea cargada, puedes acceder a cada una mediante
el primer índice de 'lineas'.


Espero que esto te ayude.

Steven


2018-02-28 8:38 GMT-05:00 LAURA PATRICIA CARRANZA MURILLO <
laura.carranza en unibague.edu.co>:

> Buenos días,
>
> Estoy empezando a programar y por lo tanto son pocas las funciones que
> conozco. Debo hacer un programa que lea un archivo txt y almacene la
> información de cada linea de tal manera que pueda utilizarla después para
> hacer operaciones.
>
>
> Incialmente pensé en ingresar la información linea por línea en un arrrays
> diferentes para luego poder llamarlos, pero no lo he logrado. Hasta el
> momento solo se como mostrar la información del archivo y no se como llamar
> cada linea sin que aparezca la línea anterior.
>
>
> Agradecería cualquier ayuda o tip que pudieran darme.
>
> Este es el código que tengo hasta ahora:
>
>
>
>    1. #include <stdio.h>
>    2.
>    3. int main()
>    4. {
>    5. int i;
>    6. char nombre[10]="datos.dat", linea[81];
>    7. FILE <http://www.php.net/file> *fichero;
>    8. fichero = fopen <http://www.php.net/fopen>( "C:\\Prueba\\
>    guia(1).txt","r");
>    9. printf <http://www.php.net/printf>( "Fichero: %s -> ", nombre );
>    10. if( fichero )
>    11. printf <http://www.php.net/printf>( "existe (ABIERTO)\n" );
>    12.
>    13. else
>    14. {
>    15. printf <http://www.php.net/printf>( "Error (NO ABIERTO)\n" );
>    16. return 1;
>    17. }
>    18.
>    19. printf <http://www.php.net/printf>( "La primera linea del fichero:
>    %s\n\n", nombre );
>    20. printf <http://www.php.net/printf>( "%s\n", fgets
>    <http://www.php.net/fgets>(linea, 81, fichero) );
>    21.
>    22. printf <http://www.php.net/printf>( "DATOS DE LOS PEDIDOS \n\n");
>    23. for (i = 0; i< 20; i++)
>    24. {
>    25. printf <http://www.php.net/printf>( "%s\n", fgets
>    <http://www.php.net/fgets>(linea, 81, fichero) );
>    26. }
>    27.
>    28. if( !fclose <http://www.php.net/fclose>(fichero) )
>    29. printf <http://www.php.net/printf>( "\nFichero cerrado\n" );
>    30. else
>    31. {
>    32. printf <http://www.php.net/printf>( "\nError: fichero NO CERRADO\n"
>    );
>    33. return 1;
>    34. }
>    35.
>    36. return 0;
>    37. }
>
>
>
> Saludos y muchas gracias por su atención
>
> --
> *Laura Carranza *
>
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.conclase.net/pipermail/cconclase_listas.conclase.net/attachments/20180228/b8345683/attachment.html>


Más información sobre la lista de distribución Cconclase