fread()
Membaca data dari file dalam C
Last updated
Membaca data dari file dalam C
Last updated
Fungsi fread()
digunakan untuk membaca blok data dari file ke dalam memori. Fungsi ini terutama berguna untuk membaca data biner, tetapi juga bisa digunakan untuk membaca data teks dalam blok.
ptr
➜ Pointer ke area memori tempat data akan disimpan.
size
➜ Ukuran setiap elemen yang akan dibaca (dalam byte).
count
➜ Jumlah elemen yang akan dibaca.
stream
➜ Pointer ke file yang sudah dibuka.
Mengembalikan jumlah elemen yang berhasil dibaca. Jika kurang dari count
, bisa berarti terjadi EOF atau kesalahan.
Misalkan kita memiliki file biner data.bin
yang berisi array integer, dan kita ingin membaca 5 elemen.
Hasilnya:
fread(data, sizeof(int), 5, file)
mencoba membaca 5 elemen, masing-masing sebesar sizeof(int)
, dari file.
Jika jumlah elemen yang berhasil dibaca kurang dari 5, berarti terjadi EOF atau kesalahan baca.
Hasil dari fread()
kemudian dibandingkan dengan jumlah elemen yang diharapkan untuk memastikan data telah dibaca dengan benar.
Walaupun biasanya untuk data teks kita menggunakan fungsi seperti fgets()
, fread()
juga bisa digunakan untuk membaca blok data sekaligus.
Hasilnya:
fread(buffer, sizeof(char), sizeof(buffer) - 1, file)
membaca hingga 49
karakter dari file teks ke dalam buffer
.
Setelah pembacaan, kita menambahkan karakter null (\0
) agar buffer
menjadi string yang valid.
Ini memungkinkan kita untuk membaca blok teks sekaligus.