Variabel dalam program yang telah dibuat akan menemukan masalah jika program
tersebut ditutup. Variable tersimpan hanya saat program dibuka sehingga dalam
program diperlukan suatu media penyimpanan lain seperti file. Dengan demikian
data yang digunakan dalam program akan tetap tersimpan walaupun program
sudah ditutup.
File pada computer terdiri dari dua jenis yaitu file text dan file binary. File text
biasanya dibuat dengan text editor seperti txt, docx, html,dll. File binary adalah file
yang tersimpan dalam bentuk biner (0 dan 1) seperti file dengan ekstensi exe, bin,
dll.
Fungsi dalam bahasa c yang digunakan untuk membaca isi dari file seperti pada
Gambar 13. 1.
W Buka untuk ditulis Buat baru atau tulis ulang jika ada
Wb Buka untuk ditulis dalam binary Buat baru atau tulis ulang jika ada
A Buka untuk ditambahkan Buat baru atau tulis ulang jika ada
Ab Buka untuk ditambahkan dalam binary Buat baru atau tulis ulang jika ada
w+ Buka untuk ditulis dan dibaca Buat baru atau tulis ulang jika ada
wb+ Buka untuk dibaca dan ditulis dalam Buat baru atau tulis ulang jika ada
binary
a+ Buka untuk dibaca dan ditambahkan Buat baru atau tulis ulang jika ada
isinya
ab+ Buka untuk dibaca dan ditambahkan Buat baru atau tulis ulang jika ada
isinya dalam binary
Fungsi fopen() akan menghasilkan sebuah pointer yang merujuk ke alamat memori
dari file yang akan dibuka, karena itu maka dibutuhkan suatu variable pointer untuk
mengaksesnya. Untuk lebih memahami cara penggunaan fungsi fopen maka coba
praktikkan kode program yang ada pada PRAKTIKUM.
Saat kode program dieksekusi maka isi file “biodata.txt” yang muncul hanya baris
pertama saja karena menggunakan fungsi fgets() yang disimpan ke dalam file buff
dengan panjang 255. Panjang karakter dapat diambil dengan fungsi sizeof() agar
mengikuti Panjang karakter dari variabelnya. Untuk lebih jelas coba praktikkan
pada Langkah ke 8.
8. Ubah kode program seperti di bawah ini:
Kode program pada Langkah ke 8 akan memunculkan satu masalah jika isi dari file
“biodata.txt” berisi banyak baris. Programmer harus menuliskan fungsi fgets()
sebayak baris yang ada di dalam file. Masalah ini dapat diatasi dengan
menggunakan fungsi perulangan. Perhatikan dan praktikkan pada Langkah ke 9 di
bawah ini.
10. Ubah kode program menjadi seperti kode di bawah ini :