C中的fseek函数使用

函数名:fseek函数

头文件:#include<stdio.h>

功能:把与fp有关的文件位置指针放到一个指定位置

格式:  int fseek(FILE *stream, long offset, int fromwhere);
范例一:fseek(fp, 0L, SEEK_END);
解释:文件指针定位到文件末尾,偏移0个字节

范例二:  fseek(fp,50L,0);或fseek(fp,50L,SEEK_SET);

解释:其作用是将位置指针移到离文件头50个字节处。

 
起始点 对应的数字 代表的文件位置
SEEK_SET 0 文件开头
SEEK_CUR 1 文件当前位置
SEEK_END 2 文件末尾

说明:

       offset:偏移量
       fromwhere:起始位置

      其中,“位移量”是long型数据,它表示位置指针相对于“起始点”移动的字节数。

      如果位移量是一个正数,表示从“起始点”开始往文件尾方向移动;

      如果位移量是一个负数,则表示从“起始点”开始往文件头方向移动。

     “起始点”不能任意设定,它只能是在stdio.h中定义的三个符号常量之一:

注意:  

      fseek函数的文件指针,应该为已经打开的文件。如果没有打开的文件,那么将会出现错误。

以上内容来自网络上资料,整理结果。

下面请看例题:

例题代码:

 

复制代码
#include <stdio.h>
#include <stdlib.h>//fseek函数调用
int main()
{
    // 开始文件中的内容为aaaaaaaaa
    FILE * fp = fopen("a.txt", "r+");
    if (fp == NULL) {
        printf("file error\n");
        exit(1);
    }
    fseek(fp, 2, SEEK_SET);//光标移到文件开始起第二个字节处。
    fwrite("yun", 1, 3, fp); //文件内写入内容yun
    fclose(fp);
    return 0;
}
复制代码

 

 

程序运行前截图:

************************************************************************************************************************

 

 

****************************************************************************

程序运行后截图:

****************************************************************************

 

 

 

***********************************************************************************

posted @   技术宅星云  阅读(78306)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
点击右上角即可分享
微信分享提示