File Processing
FILE PROCESSING
Penggunaan operasi file sangat dibutuhkan dalam dunia pemograman.Pada dasarnya mode operasi file terdiri dari 3 jenis yaitu:
1. Read(R)
2. Write(W)
3. Append(A)
Syntax dasar dalam File:
FILE *fp; // variable nama file
fp = fopen("data.txt", mode);// membuka file
statement;// perintah-perintah
fclose(fp);// menutup file
Mode dalam operasi file
r membuka file untuk dibaca (jika file tidak ada maka akan bernilai NULL)
w membuka file untuk ditulis (jika sudah ada file yang sama maka akan di overwrite/ dihapus)
a membuka file yang sudah ada dan ditambahkan datanya di paling bawah baris terakhir (jika file belum ada
otomatis akan dibuat)
r+ sama dengan 'r' tetapi selain dibaca juga dapat ditulis
w+ sama dengan 'w' tetapi selain ditulis juga dapat dibaca
a+ sama dengan 'a' selain dapat ditulis juga dapat dibaca
rb hanya membaca file biner
wb membuat file biner baru
ab menambahkan teks pada file biner
Membaca File
Untuk membaca file kita bisa menggunakan fgetc(),fgets() dan fscanf(). fgetc() untuk membaca karakter pada file
fgets() dan fscanf() membaca string pada filenya, bedanya fgets() hanya membaca string pada file sampai
ditemukan baris baru(\n) sedangkan fscanf() membaca string sampai ditemukan spasi.
syntax:
fgetc(nama_variabel_file);
fscanf(nama_variabel_file, "string_kontrol", nama_variabel_file);
fgets(nama_variabel, jml_karakter, nama_variabel_file);
contoh program :
#include <stdio.h>
int main()
{
char data[50];
int i=1;
FILE *fp;
fp=fopen("data.txt", "r");
while(fgets(data,50,fp)!=NULL) //membaca dan mengulang sampai data habis
{
printf("Data ke-%d : %s", i, data);
i++;
}
fclose(fp);
printf("\n\nData berhasil dibaca");
return 0;
}
Menulis File
Untuk menulis file kita dapat menggunakan fputc(),fputs() dan fprintf(). fputc() untuk menulis sebuah karakter,
sedangkan fputs() dan fprintf() untuk menulis string
syntax:
fputc('karakter', nama_variabel_file);
fputs("string", nama_variabel_file);
fprintf(nama_variabel_file, "string");
contoh program:
#include <stdio.h>
int main()
{
char data[50];
int i=0;
FILE *fp;
fp=fopen("data.txt", "w");
for(i=0; i<5; i++)
{
printf("Masukkan data ke-%d : ", i+1); fflush(stdin); gets(data);
fprintf(fp, "%s\n", data);
}
fclose(fp);
printf("\n\nData berhasil ditulis");
return 0;
}
Comments
Post a Comment