【发布时间】:2010-12-02 13:44:47
【问题描述】:
我有一个文本文件,其中包含用逗号分隔的三个字段。 我的文本文件内容示例:12345,真正的编程新手,BS ME 要将文件加载到程序中,我使用了以下代码....我的问题是有时代码有效,有时无效(没有出现错误消息,程序只是自行关闭并且无法继续)。我还观察到文本文件是空白的(没有写入任何内容)它会自动关闭并且不会继续。您的帮助将不胜感激。谢谢!
int read(){
FILE *stream = NULL;
int ctr;
char linebuffer[45];
char delims[]=", ";
char *number[3];
char *token = NULL;
stream = fopen("student.txt", "rt");
if (stream == NULL) stream = fopen("student.txt", "wt");
else {
printf("\nReading the student list directory. Wait a moment please...");
while(!feof(stream)){
ctr=0;
fgets(linebuffer, 46, stream);
token = strtok(linebuffer, delims);
while(token != NULL){
number[ctr] = linebuffer;
token = strtok(NULL, delims);
ctr++;
}
recordCtr++;
}
recordCtr--;
}
fclose(stream);
}
【问题讨论】:
-
为什么在你的问题中使用这么多点?看起来很可怕。