文件操作:fseek函数和ftell函数

1、fseek函数:

int fseek(FILE * _File, long _Offset, int _Origin);

函数设置文件指针stream的位置。如果执行成功,stream将指向以fromwhere为基准,偏移offset(指针偏移量)个字节的位置,函数返回0。如果执行失败则不改变stream指向的位置,函数返回一个非0值。

超出文件末尾位置,还是返回0。往回偏移超出首位置,还是返回0,小心使用。

  • 第一个参数stream为文件指针。

  • 第二个参数offset为偏移量,正数表示正向偏移,负数表示负向偏移。

  • 第三个参数origin设定从文件的哪里开始偏移,可能取值为:SEEK_CUR、SEEK_END或SEEK_SET。

SEEK_SET:文件开头
SEEK_CUR:当前位置
SEEK_END:文件结尾
fseek(fp, 3, SEEK_SET);

2、ftell函数

ftell函数用于得到文件位置指针当前位置相对与文件首的偏移字节数。在随机方式存取文件时,由于文件位置频繁的前后移动,程序不容易确定文件的当前位置。

long len = ftell(fp)

文件操作:fseek函数和ftell函数相关推荐

  1. C语言学习笔记---fseek()函数和ftell()函数

    fseek()函数    fseek()函数简单的理解,功能就是用来设置打开文件中光标的位置.比如默认打开一个文件后,光标在文件的最开始位置,但是好多时候操作文件的时候,不一定都是从最开始位置操作的. ...

  2. fseek()函数 和 ftell()函数

    一.fseek定位 库函数 fseek()的作用类似于系统调用 lseek(),用于设置文件读写位置偏移量,lseek()用于文件 I/O,而库函数 fseek()则用于标准 I/O,其函数原型如下所 ...

  3. 【C 语言】文件操作 ( 配置文件读写 | 读取配置文件 | 函数接口形参 | 读取配置文件的逐行遍历操作 | 读取一行文本 | 查找字符 | 删除字符串前后空格 )

    文章目录 一.函数接口形参 二.读取配置文件的逐行遍历操作 1.读取配置文件的逐行遍历操作 2.读取一行数据 3.查找字符 4.删除字符串前后的空格 5.完整代码示例 一.函数接口形参 函数作用 : ...

  4. 文件操作:fgetc与fputc函数的使用

    在成功打开文件后,我们便可以对文件进行操作,以下是字符输入函数fgetc和字符输出函数fputc的简单使用说明. 如果还不知道如何打开文件的可以看看我的另一篇文章. 点我 fputc函数的使用 当我们 ...

  5. 文件操作之fread()和fwrite()函数

    size_t fwrite( const void *buffer, size_t size, size_t count, FILE *stream ); buffer-指向要写数据的存储位置 siz ...

  6. windows 平台下,运用 Python 进行简单的文件操作需要用到的函数

    获得路径相关信息 获得目录和文件名 os.getenv()获取环境变量  os.putenv()设置环境变量  os.getcwd() 获得当前目录  os.chdir('要设置的当前目录')  os ...

  7. C语言文件操作函数大全

    unix中一切皆文件,所以文件操作至关重要! clearerr(清除文件流的错误旗标) 相关函数 feof 表头文件 #include<stdio.h> 定义函数 void clearer ...

  8. Python基础(十三)——文件操作(open函数、close函数)

    本文以Python3以上为学习基础. 目录 1. 使用文件操作第一原则 2.open函数 2.1.文件打开模式 2.1.1.只读模式打开文件--只读(r) 2.1.2.读写模式打开文件--读写模式(r ...

  9. C语言文件操作(三) —— 文件的随机读写(fseek / lseek)

            目录 1.什么是文件的随机读写 2.认识文件随机读写函数 (1) fseek 函数 -- 移动文件指针的位置 (2) ftell 函数 -- 告知当前文件指针相对于起始位置的偏移量 ( ...

  10. 前端学PHP之文件操作

    前面的话 在程序运行时,程序本身和数据一般都存在内存中,当程序运行结束后,存放在内存中的数据被释放.如果需要长期保存程序运行所需的原始数据,或程序运行产生的结果,就需要把数据存储在文件或数据库.一般地 ...

最新文章

  1. Hr必看:也许你做的绩效考核都是错的
  2. Debian下配置SSH服务器的方法
  3. ASP.NET实现用户在线检测的类源码[转收藏]
  4. mysql的存储过程基本使用
  5. Java并发ReadWriteLock接口
  6. 为什么我不喜欢数据库三范式
  7. js中使用shiro标签的一个小坑
  8. java 顶点着色_Shader笔记_002简单顶点/片元着色器扩展
  9. 异常检测(Anomaly detection): 异常检测算法(应用高斯分布)
  10. 10小时,就能吃透Kafka源码?
  11. linux恢复树莓派内存卡容量,找回树莓派SD卡剩余空间
  12. 华为GPON-MA5680T开局配置
  13. MySQL 中STD、STDDEV、STDDEV_SAMP 标准差函数的区别
  14. 6大智慧电厂关键技术,三维可视化仅是基础
  15. 聚名:“虎虎酒”商标正在申请中,电视剧《赘婿》引商标注册热潮!
  16. 新浪微博草根大号困局:新鲜感丧失 商业化过度
  17. 切绳子(含五种二分做法)
  18. 透过现象看本质,究竟为什么阿里巴巴爱招Java开发程序员?
  19. TensorFlow的MNIST手写数字分类问题 基础篇
  20. iapp php邮箱怎么反馈,iCloud邮箱

热门文章

  1. 手把手教你制作R包(一)
  2. 超智能体,tensorflow
  3. 用汇编语言实现c语言程序例题,C语言详细例题大全
  4. 安卓udp发包工具_Sendip 命令行发包工具,支持IP、TCP、UDP等
  5. C语言头歌educoder实训作业答案分享 结构体
  6. 译者后记 ——《DOOM启示录》读后感(二)
  7. android开机动画多长时间_ANDROID开机动画分析
  8. 顺序结构程序设计总结
  9. PMP考试教材有哪些?
  10. the road to TCPIP(1)--TCPIP详解--数据链路层