假设我有一个这样的文本文件:
用户:约翰
设备:12345
日期:12/12/12
编辑:
我有我的代码可以成功搜索一个单词,并在该单词之后显示信息。但是,当我尝试编辑代码以搜索 2 个或 3 个单词并在它们之后显示信息而不是仅 1 个单词时,我无法让它工作。我尝试将代码添加到同一个 while 循环中,并为另一个词创建一个新的 while 循环,但两者都不起作用。一定有什么我做错/没有做的事情。
请指教,谢谢!
这是我的代码:
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main() {
char file[100];
char c[100];
printf ("Enter file name and directory:");
scanf ("%s",file);
FILE * fs = fopen (file, "r") ;
if ( fs == NULL )
{
puts ( "Cannot open source file" ) ;
exit( 1 ) ;
}
FILE * ft = fopen ( "book5.txt", "w" ) ;
if ( ft == NULL )
{
puts ( "Cannot open target file" ) ;
exit( 1 ) ;
}
while(!feof(fs)) {
char *Data;
char *Device;
char const * rc = fgets(c, 99, fs);
if(rc==NULL) { break; }
if((Data = strstr(rc, "Date:"))!= NULL)
printf(Data+5);
if((Data = strstr(rc, "Device:"))!=NULL)
printf(Device+6);
}
fclose ( fs ) ;
fclose ( ft ) ;
return 0;
}