基本上我想要做的是使用数组和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;
}