elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Curso de javascript por TickTack


  Mostrar Temas
Páginas: [1]
1  Programación / Programación C/C++ / Existe algun comando para leer y guardar el valor de un fichero en C? en: 3 Febrero 2019, 14:48 pm
Estoy teniendo problemas con el fichero para leer un valor especifico y compararlo con otro. La idea es que tengo un archivo de récords donde están guardados en cada linea la fecha, la puntuación y el nombre. Tengo que imprimir este fichero en la pantalla, lo hago con el fgetc y putchar pero el problema es que tengo que imprimirlos en orden, es decir, el primero con la puntuación más alta, luego la segunda puntuación más alta y así hasta el final. Luego tengo que imprimir la cantidad de récords imprimidos (esto lo hice con un contador) y la puntuación máxima de los récords imprimidos.

Aqui os dejo lo que tengo por ahora. (lo intente con tabla de caracteres pero no supe ni como comenzar)

system("cls");
    int i, cont_ficher, cont, num;
    int aux[20];

    FILE *ficher;
   
    cont_ficher = 0;
    cont = 0;

    printf ("\nFECHA           PUNTUACION      NOMBRE");
    printf ("\n---------------------------------------\n");



    ficher = fopen("records.txt" ,"r");           
    if (ficher != NULL)
    {
        while ((i = fgetc(ficher)) != EOF)
        {
            if (i == '\n')
            {
                cont_ficher = cont_ficher + 1;
            }
        }
        cont_ficher = cont_ficher + 1;
        fclose (ficher);
    }
    else
    {
        printf("Error");
    }

    do
    {
    ficher = fopen("records.txt" ,"r");             
    if (ficher != NULL)
    {
        while ((i = fgetc(ficher)) != EOF)
        {
            if (i == 9)
            {
                while ((i = fgetc(ficher)) != 9)
                {

                }
            }
        }
         fclose (ficher);
    }
    else
    {
        printf("Error");
    }

    ficher = fopen("records.txt" ,"r");             
    if (ficher != NULL)
    {
        while ((i = fgetc(ficher)) != EOF)
        {
            putchar(i);
        }
        cont = cont + 1;
         fclose (ficher);
    }
    else
    {
        printf("Error");
    }
    }while (cont != cont_ficher);

    printf ("\n---------------------------------------\n");
    printf ("");



Tambien os dejo el fichero:

3-2-2019   39000      NOMBRE
3-2-2019   21000      NOMBRE               (Estan separados por tabulaciones)
3-2-2019   18000      NOMBRE               (FECHA \t  PUNTUACION \t\t NOMBRE)
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines