C的简单文件读写示范
来源:互联网 发布:windows命令行解压zip 编辑:程序博客网 时间:2024/05/27 20:20
C的简单文件读写示范
在C中,通过fopen()函数来打开文件,在程序结束前必须用fclose()函数关闭文件
打开/关闭文件
- fopen()函数原型: FILE* fopen(const char* filename, const char *mode)
参数一: 文件名
参数二: 打开模式
返回值: 成功打开返回文件指针,打开失败返回NULL
- fclose()函数原型: int fclose(FILE *fp)
参数一: 文件指针
返回值: int类型的数值,返回1代表成功关闭
使用示例:char* fileName = "文件名";char* mode = "r";FILE* f = fopen(fileName, mode);....fclose(f);
- fopen()函数原型: FILE* fopen(const char* filename, const char *mode)
常用文件读写:
- 读: fsanf()
函数原型:
int fscanf(FILE *stream, const char *format[, address, …]);
参数一: 文件指针
其他参数: 其他参数: 格式与scanf(“%d”, &a);一样,需要用到占位符
返回值: 成功读取的字符的个数
如果遇到错误或遇到end of file,返回值为EOF。
- 写: fprintf()
函数原型:
int fprintf(FILE* stream, const char* format[, argument, …]);
参数一: 文件指针
其他参数: 格式与printf(“%s参数%d”, “可选”, 1);一样,需要用到占位符
返回值: 已输出的字符的个数
PS: [, argument, …] 中,被[]括起来的参数都是可选参数(需要时可以有,不需要时可以没有)
如: printf(“Hello World”); 就没用到可选参数
printf(“%s %s”, “Hello”, “World”);就用到了两个可选参数
- 读取完毕feof()
函数原型: int feof(FILE *stream)
参数一: 文件指针
返回值: 1读取完毕,0未读取完毕
- 读: fsanf()
注意:
- 确定文件读写的模式mode
- 打开文件后,都得用fclose()关闭该文件
- 若文件为空(没内容),则不能使用fclose()
- 用循环从文件中读取相同格式的数据时,判断条件为feof()
- 读取文件前,得检测文件是否存在
存在就用读取其数据
不存在就用用”w”,创建该文件
- 由于编码问题,以’wb’【二进制】模式打开的文件,在写入含有’\n’的文本后,在windows自带的记事本看不到换行
- 确定文件读写的模式mode
简单示例
#include <stdio.h>main(){ FILE* data_stu=fopen("学生信息管理系统_data.txt", "r"); if(data_stu==NULL) // 文件不存在, 新建该对应的数据文件, 并写入必要的数据 { FILE* data_stu_2 = fopen("学生信息管理系统_data.txt","w"); fprintf(data_stu_2,"姓名,学号,数学,语文,英语,平均分\n"); // 写入信息说明 fprintf(data_stu_2,"小明,A10,100,20,30,50\n"); // 写入一个学生的数据 fclose(data_stu_2); }else // 仅在文件存在且内容不为空 { char rubbish[50]; // 读取数据时, 每次都得看检测能否读取 if( !feof(data_stu) ) fscanf(data_stu,"%s\n",rubbish); //读取信息说明 // 循环读取学生数据 while( !feof(data_stu) ) { //步骤省略 break } // 仅在文件存在且不为空时, 关闭文件 fclose(data_stu); }}// data_stu是在文件存在且内容不为空时,才关闭// data_stu_2是在文件不存在, 用于新建数据文件的, 写入必要的数据后便在{}中关闭了该文件
阅读全文
0 0
- C的简单文件读写示范
- C#: 最简单的文件读写
- 一个简单用c和mysql的示范程序
- 简单的文件读写
- 简单的读写文件
- 简单的读写文件
- 文件的简单读写
- 简单的文件读写
- 文件的简单读写
- 简单的文件读写
- 简单的数据库连接代码示范!!
- C文件的读写
- C文件的读写
- 用c读写dbf文件的简单实现
- C#:读写简单的文本文件
- Ruby简单的读写文件
- Ruby简单的读写文件
- 最简单的读写文件
- 外观模式(门面模式)--Facade
- 基于opencv的车牌识别(一)开章及任务详述
- 利用json-server创建伪接口
- illumination invariant image之恢复到彩色图像
- 老祖宗总结的12条决定命运的秘诀
- C的简单文件读写示范
- poj2115 数论 同余方程
- 解决树莓派鼠标延迟/迟滞问题解决
- 使用gdb调试多进程多线程调试
- better call saul S03E09(10append)
- 分享我的设计: jxt (强结构文档数据表示协议),源码适时开放
- 剑指offer面试题[20]-顺时针打印矩阵
- 装饰者模式-Decorator
- 浏览器缓存机制