1. 程式人生 > >轉載:C中的fseek函數使用

轉載:C中的fseek函數使用

c中 == ade 一個 技術 tar 移動 txt rule

函數名: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;
}
技術分享圖片

程序運行前截圖:

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

技術分享圖片

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

程序運行後截圖:

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

技術分享圖片

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

轉載原文:星雲博客園 鏈接:https://www.cnblogs.com/xingyunblog/p/3675568.html

轉載:C中的fseek函數使用