C语言 在文件中查找字符串
时间: 2023-09-04 18:16:38 浏览: 498
在 C 语言中,可以使用标准库函数 `fgets()` 以及字符串处理函数 `strstr()` 来在文件中查找字符串。
以下是一个简单的示例代码:
```c
#include <stdio.h>
#include <string.h>
int main() {
FILE *file;
char filepath[100], search_string[100], line[1000];
printf("Enter file path: ");
scanf("%s", filepath);
printf("Enter search string: ");
scanf("%s", search_string);
file = fopen(filepath, "r");
if (file == NULL) {
printf("Unable to open file!");
return 0;
}
while (fgets(line, sizeof(line), file)) {
if (strstr(line, search_string)) {
printf("Found the string '%s' in file '%s'\n", search_string, filepath);
fclose(file);
return 0;
}
}
printf("Did not find the string '%s' in file '%s'\n", search_string, filepath);
fclose(file);
return 0;
}
```
在这个示例代码中,程序会提示用户输入要查找的文件路径和字符串。然后程序会打开这个文件,并逐行读取文件内容。使用 `strstr()` 函数来查找是否存在要查找的字符串。如果找到了匹配的字符串,则输出相应信息并退出程序。如果在整个文件中都没有找到要查找的字符串,则输出相应信息并退出程序。
需要注意的是,在使用 `fgets()` 函数读取文件内容时,需要指定每行最大的读取长度。在这个示例代码中,我们设定了每行最大的读取长度为 1000。
阅读全文