C语言文件读写操作示例
13 浏览量
更新于2024-08-03
收藏 1KB TXT 举报
"C语言文件读写操作代码示例"
在C语言中,对文件进行读写操作是常见的任务,通常涉及到文件的打开、写入、读取和关闭等步骤。以下是一个简单的C语言程序,它展示了如何进行文件读写操作。
首先,我们需要包含必要的头文件,`stdio.h`用于标准输入输出,`stdlib.h`则提供了内存管理和错误处理的函数。程序的核心部分在`main`函数内:
```c
int main() {
FILE *fp;
char filename[] = "example.txt";
char buffer[100];
// 打开文件以进行写入
fp = fopen(filename, "w");
// 检查文件是否成功打开
if (fp == NULL) {
printf("无法打开文件%s\n", filename);
return -1;
}
// 写入数据到文件
fprintf(fp, "这是一个示例文本文件。\n");
fprintf(fp, "用于演示文件读写操作。\n");
// 关闭文件
fclose(fp);
// 重新打开文件以进行读取
fp = fopen(filename, "r");
// 检查文件是否成功打开
if (fp == NULL) {
printf("无法打开文件%s\n", filename);
return -1;
}
// 从文件读取数据并显示
while (fgets(buffer, sizeof(buffer), fp) != NULL) {
printf("%s", buffer);
}
// 关闭文件
fclose(fp);
return 0;
}
```
在这个程序中,我们定义了一个文件指针`fp`,用来指向要操作的文件。`fopen()`函数用于打开文件,第一个参数是文件名,第二个参数是模式,"w"表示写入模式,会覆盖原有内容;"r"表示读取模式。如果文件打开失败,`fopen()`返回`NULL`,此时程序会提示错误并退出。
在写入阶段,`fprintf()`函数将字符串写入文件。`fprintf(fp, "text")`类似于`printf()`,但它的输出会写入到指定的文件而不是控制台。
完成写入后,使用`fclose(fp)`关闭文件,释放系统资源。接着,以读取模式`"r"`重新打开同一个文件,使用`fgets()`函数逐行读取文件内容。`fgets()`会读取指定长度(这里是`sizeof(buffer)`)的字符,并在遇到换行符或文件末尾时停止。读取到的内容会被保存在`buffer`中,然后打印到控制台上。
最后再次调用`fclose(fp)`关闭文件,确保所有操作完成后释放文件指针。
在实际应用中,你需要考虑更多因素,如文件路径是否正确,文件权限是否允许读写,以及错误处理的完善性。例如,当文件不存在时,可能需要创建新文件;在读写文件时,需要处理可能的I/O错误等。此外,对于大文件,可能需要分块读写以避免一次性加载整个文件到内存中。
点击了解资源详情
点击了解资源详情
2024-06-04 上传
2024-04-23 上传
2024-03-12 上传
2024-10-07 上传
2024-06-12 上传
叫我Eric
- 粉丝: 2137
- 资源: 1531
最新资源
- 深入浅出:自定义 Grunt 任务的实践指南
- 网络物理突变工具的多点路径规划实现与分析
- multifeed: 实现多作者间的超核心共享与同步技术
- C++商品交易系统实习项目详细要求
- macOS系统Python模块whl包安装教程
- 掌握fullstackJS:构建React框架与快速开发应用
- React-Purify: 实现React组件纯净方法的工具介绍
- deck.js:构建现代HTML演示的JavaScript库
- nunn:现代C++17实现的机器学习库开源项目
- Python安装包 Acquisition-4.12-cp35-cp35m-win_amd64.whl.zip 使用说明
- Amaranthus-tuberculatus基因组分析脚本集
- Ubuntu 12.04下Realtek RTL8821AE驱动的向后移植指南
- 掌握Jest环境下的最新jsdom功能
- CAGI Toolkit:开源Asterisk PBX的AGI应用开发
- MyDropDemo: 体验QGraphicsView的拖放功能
- 远程FPGA平台上的Quartus II17.1 LCD色块闪烁现象解析