利用C语言读取特定文件并修改特定行
时间: 2023-07-30 15:04:36 浏览: 175
C语言 读取文件
5星 · 资源好评率100%
可以使用以下步骤来读取特定文件并修改特定行:
1. 打开文件:使用 fopen() 函数打开要修改的文件。例如,可以使用以下代码打开名为 filename 的文件:
```
FILE *fp;
fp = fopen("filename", "r+");
```
2. 定位行:使用 fseek() 函数将文件指针定位到要修改的行。例如,以下代码将文件指针定位到第 5 行:
```
int line_num = 5;
int char_pos = 0;
fseek(fp, char_pos, SEEK_SET);
for (int i = 1; i < line_num; ++i) {
while (fgetc(fp) != '\n') {
++char_pos;
fseek(fp, char_pos, SEEK_SET);
}
}
```
3. 修改行:使用 fputs() 函数将新的内容写入文件中。例如,以下代码将第 5 行的内容替换为 "new content":
```
fputs("new content\n", fp);
```
4. 关闭文件:使用 fclose() 函数关闭文件。例如,以下代码关闭文件:
```
fclose(fp);
```
综合起来,以下是一个示例代码,可以读取特定文件并修改特定行:
```
#include <stdio.h>
int main() {
FILE *fp;
int line_num = 5;
int char_pos = 0;
fp = fopen("filename", "r+");
fseek(fp, char_pos, SEEK_SET);
for (int i = 1; i < line_num; ++i) {
while (fgetc(fp) != '\n') {
++char_pos;
fseek(fp, char_pos, SEEK_SET);
}
}
fputs("new content\n", fp);
fclose(fp);
return 0;
}
```
阅读全文