Чтение / анализ файла - PullRequest
       15

Чтение / анализ файла

0 голосов
/ 03 апреля 2020

Недавно я увидел здесь фрагмент кода, и я просто хотел его изменить, чтобы посмотреть, как я буду читать несколько строк в файле. Допустим, файл имеет следующее:

3 5 2 2 0 4 6 4 4 1 3 4 5 0 4 5 6 2 0 0 1 
4 0 1 2 0 3 1 4 1 0 0 1 2 3 

Таким образом, он анализирует только единственную строку, но я хотел бы сделать еще одну строку.

while (fgets(buffer, sizeof(buffer)-1, fp))
{
    if(buffer[strlen(buffer) - 1] == '\n')
        buffer[strlen(buffer) - 1] = '\0';

    while((result = fgetc(fp)) != EOF )
    {
        //removes the end newline and replaces with a null
        if(fileContents[strlen(fileContents) - 1] == '\n')
            fileContents[strlen(fileContents) - 1] = '\0';

        //if a digit is in place and has been updated
        //then count++ and go ahead and store the result in an
        //Array, which will minus ASCII value 48 to get our #
        if( isdigit( result )  )
        {
            if( currentState == NOT_IN_NUMBER )
            { 
                //debug statement
                //printf("ASCII = %d\n",result);
                //minus 48 to get to our base 10 ints
                numberArray[count++] = result - 48;
                if(count == 1)
                {
                    how_many_page = result - 48;
                }
                //count++;
                currentState = IN_NUMBER; //Jp
            }
        }
        else
        {
            //a space is found
            currentState = NOT_IN_NUMBER;
        }
    }
}

Единственное, что я добавил, было :

while (fgets(buffer, sizeof(buffer)-1, fp))
{
    if(buffer[strlen(buffer) - 1] == '\n')
        buffer[strlen(buffer) - 1] = '\0';
....

Спасибо за помощь.

...