我基本上想做的是使用数组和strtok从我正在工作的输入文件中提取时间和ip地址。我的问题是输入文件很长,我需要为.txt文件中的每一行执行此操作,但是每当我尝试使用feof(input_poiter)将代码放入do while循环时,它甚至都不会执行一次,这就是我所拥有的;
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
int main()
{
//Variable & Array Declarations
char extractArray[70];
char timeStampArray[20];
char junkArray[20];
char ipAddressArray[30];
//Output File Set Up
FILE *input_fptr;
FILE *output_fptr;
output_fptr = fopen("OutputExampleFile.txt", "w");
input_fptr = fopen("InputExampleFile.txt" , "r");
do
{
fgets(extractArray, 300, input_fptr);;
strcpy(timeStampArray, strtok(extractArray, "[]"));
strcpy(junkArray, strtok(NULL, " ]"));
strcpy(junkArray, strtok(NULL, " ]"));
strcpy(ipAddressArray, strtok(NULL, " ]"));
fprintf(output_fptr, "|%s|\t", timeStampArray);
fprintf(output_fptr, "|%s|\t", ipAddressArray);
}while(!feof(input_fptr));
fclose(output_fptr);
fclose(input_fptr);
return 0;
}