当前位置: 首页 > news >正文

【C语言】文本操作函数fseek、ftell、rewind

一、fseek 

int fseek ( FILE * stream, long int offset, int origin );

重新定位文件指针的位置,使其指向以origin为基准、偏移offset字节的位置。
成功返回0,失败返回非零值(通常为-1)。

origin有如下三种:分别是从开头、中间、结尾开始

int main()
{FILE* pf = fopen("test.txt", "r");if (pf == NULL){perror(pf);}else{//abcdefint ch = fgetc(pf);printf("%c\n", ch);//ach = fgetc(pf);printf("%c\n", ch);//bch = fgetc(pf);printf("%c\n", ch);//c//想要跳回到b进行读取,三种方法//1.fseek(pf, 1, SEEK_SET);//2.fseek(pf, -2, SEEK_CUR);fseek(pf, -5, SEEK_END);ch = fgetc(pf);printf("%c\n", ch);//b}return 0;
}

 二、ftell

long int ftell ( FILE * stream );

得到的是返回文件指针相对于起始位置的偏移量数字的大小代表当前光标距离文件起始处的字节数。

返回值的类型是long

int main()
{FILE* pf = fopen("test.txt", "r");if (pf == NULL){perror(pf);}else{//abcdefint ch = fgetc(pf);printf("%c\n", ch);//aprintf("%d\n", ftell(pf));//偏移量1ch = fgetc(pf);printf("%c\n", ch);//bprintf("%d\n", ftell(pf));//偏移量2ch = fgetc(pf);printf("%c\n", ch);//cprintf("%d\n", ftell(pf));//偏移量3}return 0;
}

三、rewind 

void rewind ( FILE * stream );

使文件读写指针指向文件开始位置 

int main()
{FILE* pf = fopen("test.txt", "r");if (pf == NULL){perror(pf);}else{//abcdefint ch = fgetc(pf);printf("%c\n", ch);//ach = fgetc(pf);printf("%c\n", ch);//bch = fgetc(pf);printf("%c\n", ch);//crewind(pf);ch = fgetc(pf);printf("%c\n", ch);//a}return 0;
}

http://www.dtcms.com/a/167263.html

相关文章:

  • 装饰器设计模式(Decorator Pattern)详解
  • (A题|支路车流量推测问题)2025年第二十二届五一数学建模竞赛(五一杯/五一赛)解题思路|完整代码论文集合
  • Ubuntu18 登录界面死循环 Ubuntu进不了桌面
  • UN R79 关于车辆转向装置形式认证的统一规定(正文部分1)
  • 编程语言全景解析与编程技巧深度探索
  • 【算法扩展】斐波那契查找算法 - JAVA
  • Python结合QT进行开发
  • ES6函数、对象和面向对象扩展
  • QT6 源(66)篇三:阅读与注释类 QAbstractSpinBox ,这是螺旋框的基类,附上源码
  • QML Image 组件详解
  • Stm32 烧录 Micropython
  • 深度学习框架搭建(Vscode/Anaconda/CUDA/Pytroch)
  • 小牛电动:荣登央视舞台,引领智能出行新潮流
  • 26考研——输入/输出系统(7)
  • 基于Redis实现-用户签到
  • 数据库 AI 助手测评:Chat2DB、SQLFlow 等工具如何提升开发效率?
  • 前端HTML基础知识
  • 超稳定性理论
  • AI Agent(2):Agent技术架构
  • 2025五一杯B题超详细解题思路
  • 【深度学习新浪潮】小米MiMo-7B报告内容浅析
  • 如何进行 JVM 性能调优?
  • Linux-04-搜索查找类命令
  • mono map
  • 【验证技能】文档要求和好文档注意点
  • 无缝监控:利用 AWS X-Ray 增强 S3 跨账户复制的可见性
  • Java 中使用正则表达式
  • OkHttp3.X 工具类封装:链式调用,支持HTTPS、重试、文件上传【内含常用设计模式设计示例】
  • 初学Vue之记事本案例
  • 数字智慧方案6165丨智慧医养大数据平台(50页PPT)(文末有下载方式)