Hàm fseek di chuyển con trỏ file tới vị trí bất kì

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

Parameter:

stream: con trỏ file

offset: Số byte sẽ di chuyển con trỏ file từ vị trí origin

origin: vị trí ban đầu của con trỏ file. Dưới đây là một số hằng số đã được định nghĩa sắn trong thư viện stdio.h

SEEK_CUR: vị trí hiện tại của con trỏ file

SEEK_END: vị trí cuối file

SEEK_SET: vị trí đầu file

Remark:

Hàm fseek( ) dịch con trỏ file tới vị trí mong muốn.

  • Hàm fseek( ) trả về 0 nếu dịch con trỏ file thành công
  • Hàm trả về giá trị khác 0 nếu xảy ra lỗi.

Ví dụ:

#include "stdio.h"
#include "conio.h"

void main()
{
    FILE *fp;
    char forum_name[] = "vncoding.net";
    char s[80];
    int res;

    if((fp = fopen("D:\\data.txt","w+")) == NULL)
        printf("\nError in opening file");
    else
    {
        fputs(forum_name, fp);

        res = fseek(fp, 2L, SEEK_SET);
        if(res)
            printf("\nError in seek file pointer");
        else
            if(fgets(s, 12, fp) != NULL) 
                printf("\n%s", s);

        fclose( fp );
    }
    getch(); 
}

Kết quả:

Hàm fseek di chuyển con trỏ file

Be the first to comment

Leave a Reply