文件读写的一些函数--fseek()---fread()----ftell()
2015-11-29 08:51
225 查看
函数ftell用于得到文件位置指针当前位置相对于文件首的偏移字节数。在随机方式存取文件时,由于文件位置频繁的前后移动,程序不容易确定文件的当前位置。
该函数对于2的31次方-1的文件,即:2.1G以上的文件操作时可能出错。
头文件:stdio.h;
功能:返回当前文件位置
使用fseek函数后在调用函数ftell()就能非常容易地确定当前文件的位置
函数原型:long ftell(FILE * stream)
fread是一个函数。从一个文件流中读取数据,最多读取count个元素,每个元素的字节为size
字节,如果调用成功返回实际读取的元素个数,如果不成功或读到文件末尾返回0.
函数原型: size_t fread(void *buffer, size_t size, size_t count, FILE* stream);
参数: buffer 用于接收数据的内存地址
size 要读的每个数据项的字节数,单位是字节
count 要读count个数据项,每个数据项size个字节
stream 输入流
返回值:
实际读取的元素个数。如果返回值与count不相同,则可能文件结尾或发生错误。
从ferror和feof获取错误或检测是否达到文件结尾。
fseek 用于二进制方式打开的文件,移动文件读写指针位置
通常文件打开后,读写位置按先后顺序,但有时你想变动读写位置
例如重新从某处起,再读一次。
fseek有三个参数,函数原型:
int fseek(FILIE* stream,long offset,int origin);
返回值:如果执行成功,stream将指向以origin为基准,偏移量为offset(指针偏移量)
个字节的位置,函数返回0.如果执行失败(offset超过了文件自身的大小),则不改变stream
指向的位置,函数返回一个非0值。
注意:文件指针指向文件或流。位置指针指向文件内部的字节位置,随文件的读取会移动,文件
指针如果不重新赋值将不会改变指向别的文件。
第一个是文件流,第三个是指针零点位置,第二个是把指针移动到的地点
第三个参数取值等于下列三个之一:
SEEK_CUR---零点为当前指针位置;-1
SEEK_END---零点为文件尾; -2
SEEK_SET---零点为文件起始; -3
第二个参数为偏移量,字节数,长整型
例如:fseek(in ,-1L,1);--零点为当前指针位置,SEEK_CUR就是1,-1L文件指针回退一个字节
该函数对于2的31次方-1的文件,即:2.1G以上的文件操作时可能出错。
头文件:stdio.h;
功能:返回当前文件位置
使用fseek函数后在调用函数ftell()就能非常容易地确定当前文件的位置
函数原型:long ftell(FILE * stream)
fread是一个函数。从一个文件流中读取数据,最多读取count个元素,每个元素的字节为size
字节,如果调用成功返回实际读取的元素个数,如果不成功或读到文件末尾返回0.
函数原型: size_t fread(void *buffer, size_t size, size_t count, FILE* stream);
参数: buffer 用于接收数据的内存地址
size 要读的每个数据项的字节数,单位是字节
count 要读count个数据项,每个数据项size个字节
stream 输入流
返回值:
实际读取的元素个数。如果返回值与count不相同,则可能文件结尾或发生错误。
从ferror和feof获取错误或检测是否达到文件结尾。
fseek 用于二进制方式打开的文件,移动文件读写指针位置
通常文件打开后,读写位置按先后顺序,但有时你想变动读写位置
例如重新从某处起,再读一次。
fseek有三个参数,函数原型:
int fseek(FILIE* stream,long offset,int origin);
返回值:如果执行成功,stream将指向以origin为基准,偏移量为offset(指针偏移量)
个字节的位置,函数返回0.如果执行失败(offset超过了文件自身的大小),则不改变stream
指向的位置,函数返回一个非0值。
注意:文件指针指向文件或流。位置指针指向文件内部的字节位置,随文件的读取会移动,文件
指针如果不重新赋值将不会改变指向别的文件。
第一个是文件流,第三个是指针零点位置,第二个是把指针移动到的地点
第三个参数取值等于下列三个之一:
SEEK_CUR---零点为当前指针位置;-1
SEEK_END---零点为文件尾; -2
SEEK_SET---零点为文件起始; -3
第二个参数为偏移量,字节数,长整型
例如:fseek(in ,-1L,1);--零点为当前指针位置,SEEK_CUR就是1,-1L文件指针回退一个字节
相关文章推荐
- Linux下配置安装PHP环境
- ArrayList和LinkedList的几种循环遍历方式及性能对比分析
- iOS9 - 采用3D Touch
- 6-10月工作总结
- GraphLab 安装在Hadoop集群
- (NO.00004)iOS实现打砖块游戏(四):砖块类的实现
- (NO.00004)iOS实现打砖块游戏(四):砖块类的实现
- (NO.00004)iOS实现打砖块游戏(四):砖块类的实现
- Java集合之Set
- 读《50 Android Hacks》笔记整理Hack 9~Hack 17
- 238. Product of Array Except Self
- 网关
- Linux_文件系统&磁盘分区
- 分享代码,带二维码生成器
- ASP.NET MVC- 解决HTML转码
- 建立自己的影响力
- TPen的7种Style和16种Mode
- 黑马程序员——javaSE_集合框架-Map
- Linux环境下SVN数据仓库迁移
- poj1151 Atlantis