fprintf()函数修改文件内容的示例
时间: 2024-05-15 19:17:29 浏览: 43
可以用fprintf()函数向一个已经存在的文件写入新的内容,也可以用该函数修改已有的内容。下面是一个简单的示例代码:
```c
#include <stdio.h>
int main() {
FILE *fp;
char str[] = "Hello, World!\n";
// 打开文件,如果不存在则创建新文件
fp = fopen("test.txt", "w+");
if (fp == NULL) {
printf("文件打开失败!\n");
return 1;
}
// 写入初始内容
fprintf(fp, "这是一个测试文件!\n%s", str);
// 移动光标到文件开头处
fseek(fp, 0, SEEK_SET);
// 修改文件内容
fprintf(fp, "这是修改后的内容!\n%s", str);
// 关闭文件
fclose(fp);
return 0;
}
```
在上面的代码中,我们首先使用fopen()函数打开文件,同时指定文件打开模式为"w+",表示既可读又可写,若文件不存在则创建新文件。然后使用fprintf()函数向文件写入初始内容,这里包括一些简单的字符串和一个换行符。接着,我们使用fseek()函数将文件光标移动到文件开头处。然后再次使用fprintf()函数向文件写入新内容,这次是把文件开头的内容替换成了一些新的字符串。最后,我们使用fclose()函数关闭文件。
需要注意的是,使用fprintf()函数修改文件内容时,要求新写入的内容和原文件的大小一致或者更小,否则将会覆盖原有的数据,无法实现修改操作。同时还要注意关闭文件,避免内存泄漏。
阅读全文