我正在尝试从文本文件中提取部分行,并将其输出到 UNIX 平台下的 C 编程中的新文件中。例如,我有 file1.txt 如下:
设备:ABCDE1
日期:12/12/12
操作员=John Doe
我希望它在 file2.txt 中显示为:
ABCDE1,2012 年 12 月 12 日,约翰·多伊。
这是我到目前为止的代码,我打开并写入文件部分,但无法弄清楚如何在“设备:”之后提取信息,而不显示“设备:”它自己。我的代码只是复制 file1 的第一行,并将其放入文件 2:
#include "stdio.h"
main()
{
FILE *fs, *ft;
char ch ;
char file[100]="" ;
char Device [100];
char Date [80];
printf ("Enter file name and directory:");
scanf ("%s",&file);
fs = fopen (file, "r") ;
if ( fs == NULL )
{
puts ( "Cannot open source file" ) ;
exit( ) ;
}
ft = fopen ( "file2.txt", "w" ) ;
if ( ft == NULL )
{
puts ( "Cannot open target file" ) ;
fclose ( fs ) ;
exit( ) ;
}
fscanf(fs, "%s %s", Device,Date);
fprintf(ft, "%s %s\n", Device,Date);
fclose ( fs ) ;
fclose ( ft ) ;
return 0;
}
fscanf() 是一个很好的命令吗?或者是否有任何其他建议的命令来完成这项工作?提前致谢。