根据搜索条件在C语言中的文本文件中搜索匹配的记录,可以采取以下步骤:
下面是一个示例代码:
#include <stdio.h>
#include <string.h>
int main() {
FILE *file, *outputFile;
char line[1024];
char searchStr[256];
char outputFilepath[256];
printf("请输入搜索条件:");
fgets(searchStr, sizeof(searchStr), stdin);
// 移除searchStr末尾的换行符
searchStr[strcspn(searchStr, "\n")] = '\0';
// 打开文本文件
file = fopen("input.txt", "r");
if (file == NULL) {
printf("无法打开文件!\n");
return 1;
}
// 创建输出文件
sprintf(outputFilepath, "output.txt");
outputFile = fopen(outputFilepath, "w");
if (outputFile == NULL) {
printf("无法创建输出文件!\n");
fclose(file);
return 1;
}
// 逐行读取文件内容
while (fgets(line, sizeof(line), file) != NULL) {
// 检查每一行是否匹配搜索条件
if (strstr(line, searchStr) != NULL) {
// 将匹配的记录写入输出文件
fprintf(outputFile, "%s\n", line);
}
}
// 关闭文件
fclose(file);
fclose(outputFile);
printf("搜索完成!匹配的记录已写入%s。\n", outputFilepath);
return 0;
}
注意事项:
领取专属 10元无门槛券
手把手带您无忧上云