fseek() ในภาษา C ใช้เพื่อย้ายตัวชี้ไฟล์ไปยังตำแหน่งเฉพาะ ออฟเซ็ตและสตรีมเป็นปลายทางของตัวชี้ ซึ่งกำหนดไว้ในพารามิเตอร์ฟังก์ชัน หากสำเร็จ จะคืนค่าศูนย์ หากไม่สำเร็จ จะส่งกลับค่าที่ไม่ใช่ศูนย์
นี่คือไวยากรณ์ของ fseek() ในภาษา C
int fseek(FILE *stream, long int offset, int whence)
นี่คือพารามิเตอร์ที่ใช้ใน fseek()
-
สตรีม - นี่คือตัวชี้เพื่อระบุสตรีม
-
ออฟเซ็ต − นี่คือจำนวนไบต์จากตำแหน่ง
-
ที่ไหน − นี่คือตำแหน่งที่เพิ่มออฟเซ็ต
โดยที่ถูกกำหนดโดยค่าคงที่ตัวใดตัวหนึ่งต่อไปนี้
-
SEEK_END - สิ้นสุดไฟล์
-
SEEK_SET - เริ่มต้นไฟล์
-
SEEK_CUR - ตำแหน่งปัจจุบันของตัวชี้ไฟล์
นี่คือตัวอย่าง fseek() ในภาษา C
สมมติว่าเรามีไฟล์ "demo.txt" ที่มีเนื้อหาดังต่อไปนี้ -
This is demo text! This is demo text! This is demo text! This is demo text!
ตอนนี้ให้เราดูรหัส
ตัวอย่าง
#include<stdio.h> void main() { FILE *f; f = fopen("demo.txt", "r"); if(f == NULL) { printf("\n Can't open file or file doesn't exist."); exit(0); } fseek(f, 0, SEEK_END); printf("The size of file : %ld bytes", ftell(f)); getch(); }
ผลลัพธ์
The size of file : 78 bytes