c語言讀取文件最后一行定位問題


fseek函數可以在fopen打開的文件中直接移動到任意字節處,

函數原型: int fseek(fp,0L,SEEK_SET);

fseek 函數第一個參數是要操作的文件指針,第二個是定位的偏移量,long類型,第三個參數是模式。

例如:   fseek ( fp, 0L,SEEK_SET); 定位到文件開始處。

      fseek ( fp,+10L,SEEK_CUR);定位在當前位置的后10個字節處。

     fseek (fp,-10L,SEEK_END);定位在文件末尾,然后向前移動10個字節處。

但是若是和fgetc函數一起用時,注意fgetc函數每使用一次就會使光標向后移動一字節。

所以:  fp = fopen(file,"r");

    fseek(fp,0L,SEEK_END);

    ch = fgetc(fp);

    fseek (fp,-2L,SEEK_CUR);  //函數必須向前位移兩個字節才能讀到讀過的上一個字節。

    ch = fgetc(fp);


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM