C 文件读写2
2024-09-21 07:48:03
feof()
int feof(FILE *stream);
在执行读文件操作时,如果遇到文件尾,则函数返回逻辑真(1);否则,则返回逻辑假(0)。
feof()函数同时适用于ASCII码文件和二进制文件。
处理二进制文件一般要用fread()和fwrite()函数。
fread()
int fread(void *buffer,int size,int count,FILE * stream);
读一个数据块,从文件流stream中读取count个每个大小为size的元素到buffer中。
fwrite()
int fwrite(void *buffer,int size,int count,FILE * stream);
将buffer所指向的数组的内容写入stream所指向的流中。
size表示单个数组元素的大小, 最多写入count 个数组元素。
流的文件位置指针根据成功写入的字节数递增。
函数返回成功写入的元素个数,如果遇到写错误,返回值可能小于count。
rewind()
int rewind(FILE * stream);
使文件位置指针指向文件头。
fseek()
int fseek(FILE *stream,位移量,参照点);
修改文件位置指针使其指向任一字节处。
(1)参照点(3种取值):
SEEK_SET ──值为0,表示文件头
SEEK_CUR──值为1,表示当前位置
SEEK_END──值为2,表示文件尾
(2)位移量:
以参照点为起点,向前(当位移量>0时)或后(当位移量<0时)移动的字节数。
在ANSI C标准中,要求位移量为long int型数据。
ftell()
long ftell(FILE *stream);
返回文件当前位置
顺序存取文件特点:
通常是文本文件,使用fscanf和fprintf函数。
文件中的记录可以有不同的长度。
不能直接快速地访问文件中的某一记录,而必须从文件中第一个记录开始访问。
新的记录只能插入到文件尾。
随机存取文件特点:
通常是二进制文件,使用fread和fwrite函数
文件中的记录具有相同的长度。
能够直接快速地定位、访问文件中的某一记录。
新记录可以插入到希望的位置。
摘自计导PPT课件
最新文章
- SQL SERVER与SSIS 数据类型对应关系
- iOS 并发编程之 Operation Queues
- DataTable行转列
- The Administration Console(管理员控制台)
- Linux下复制粘贴快捷键
- power desinger 学习笔记<;六>;
- (一)原生JS实现 - 基本类方法
- GDKOI 2016
- stormzhang的推荐!
- cocos2d-x游戏开发系列教程-中国象棋06-游戏规则
- linux软与硬接线连接
- CMCC验证绕过POC
- 学习安卓开发[3] - 使用RecyclerView显示列表
- Latex常用
- docker 镜像存放路径的修改
- WebAPI路由、参数绑定
- Percona XtraDB Cluster
- How to write a professional email?
- scrt中使用alt键
- Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift