fseek()
Memindahkan posisi dalam file dalam C
Fungsi fseek()
digunakan untuk memindahkan posisi baca/tulis (file pointer) ke lokasi tertentu dalam file. Ini berguna untuk melompat ke bagian tertentu dalam file saat membaca atau menulis data.
Sintaks
file
➜ Pointer ke file yang sudah dibuka (FILE *
).offset
➜ Jumlah byte yang ingin dipindahkan.origin
➜ Posisi referensi awal (SEEK_SET
,SEEK_CUR
,SEEK_END
).Mengembalikan
0
jika sukses, atau-1
jika gagal.
Mode origin dalam fseek()
SEEK_SET
Memulai dari awal file (offset dihitung dari awal).
SEEK_CUR
Memulai dari posisi saat ini dalam file.
SEEK_END
Memulai dari akhir file (offset dihitung mundur).
Contoh Penggunaan
1. Melompat ke posisi tertentu dalam file
Hasilnya:
fseek(file, 5, SEEK_SET);
➜ Memindahkan posisi baca ke byte ke-5 dari awal.
2. Membaca data dari posisi tertentu
fseek(file, -6, SEEK_END);
➜ Bergerak mundur 6 byte dari akhir file.Membaca karakter di posisi itu dengan
fgetc()
.
3. Menggunakan SEEK_CUR untuk melompati bagian tertentu
Membaca 1 karakter dulu (
fgetc(file)
).fseek(file, 2, SEEK_CUR);
➜ Lompat 2 karakter ke depan dari posisi saat ini.
Last updated