MANIPULASI FILE
·         File merupakan salah satu jenis penyimpanan yang bersifat non-volatile atau permanen, dengan demikian data-data dalam file dapat ditulis atau dibaca.
·         Dalam pemrograman bahasa C file dikenal sebagai stream, stream merupakan kumpulan karakter yang disusun dalam baris-baris yang berpindah dari media yang satu ke yang lain dalam suatu sistem komputer.
·         Manipulasi file dapat dilakukan dengan menggunakan stdio.h atau fstream.h.

1.      Manipulasi File Menggunakan stdio.h
Ø  Dalam menggunakan file header stdio.h setiap file memerlukan pendeklarasian sebuah variabel bertipe pointer untuk menandai file yang digunakan dalam operasi I/O. Berikut pendeklarasian pointer file:

FILE *fp, *fp2;
Ø  Untuk membuka suatu file dapat digunakan fungsi fopen. Fungsi tersebut mengembalikan nilai pointer file yang digunakan atau jika terjadi eror maka nilai NULL akan dikembalikan. Contoh di bawah ini akan membuka file bernama prog.c dengan mode “r” untuk di baca dan di asossiasikan dengan pointer file fp.
fp = fopen( “prog.c”,  “r”) ;

Ø  Terdapat beberapa jenis mode pembacaan file yang digunakan yaitu:
o        r - open for reading
o        w - open for writing (file need not exist)
o        a - open for appending (file need not exist)
o        r+ - open for reading and writing, start at beginning
o        w+ - open for reading and writing (overwrite file)
o        a+ - open for reading and writing (append if file exists)

Ø  Berikut ini merupakan beberapa fungsi yang ada dalam Library Standard I/O dan dapat digunakan untuk melakukan operasi I/O pada file.
o        Untuk menulis ke file dalam format tertentu:
int fprintf(fp, "Testing...\n");
jika berhasil akan dikembalikan jumlah byte yang dituliskan sedangkan jika gagal dikembalikan EOF(konstanta yang menandakan akhir dari file)

o        Untuk membaca dari file dalam format field tertentu:
int fscanf(fp, "Testing...\n");
jika berhasil akan dikembalikan jumlah field yang dibaca sedangkan jika gagal dikembalikan EOF

o        Untuk menulis karakter ke file teks:
int fputc( int c, FILE *fp );
jika berhasil akan dikembalikan karakter c sedangkan jika gagal dikembalikan EOF

o        Untuk membaca file teks perkarakter:
int fgetc (FILE *fp);
jika berhasil akan dikembalikan karakter c sedangkan jika gagal dikembalikan EOF
o        Untuk meletakkan nilai integer ke file:
int putw(int w, FILE *fp);
jika berhasil akan dikembalikan integer w sedangkan jika gagal dikembalikan EOF

o        Untuk membaca nilai integer:
int getw(FILE *fp);
jika berhasil akan dikembalikan integer w sedangkan jika gagal dikembalikan EOF

o        Untuk menulis string ke file tanpa ada karakter NULL dan newline:
int fputs(const char *s,FILE *fp);
jika berhasil akan dikembalikan string s sedangkan jika gagal dikembalikan EOF

o        Untuk membaca string dari file sebanyak n karakter atau bertemu karakter ‘\n’:
char *fgets(const char *s,int n,FILE *fp);
jika berhasil akan dikembalikan string s sedangkan jika gagal dikembalikan EOF

o        Untuk mengetahui akhir sebuah file stream:
int feof(FILE *fp);
jika berhasil akan dikembalikan nilai integer selain 0.
Ø  Untuk menutup file yang digunakan pada program maka dapat digunakan fungsi fclose untuk memberikan nilai kembalian status program. Contoh:
fclose ( fp ); //menutup file yang diasosiasikan dengan pointer fp
Ø  Contoh 1: Program Menampilkan Isi File
#include <stdio.h>
void main()
{
   FILE *fp;
   int c ;

   fp = fopen( "tes.txt", "r" ); //membuka file tes.txt
   c = fgetc( fp );
   while (  c != EOF ) // perulangan terjadi hingga mencapai EOF
   {
         putchar( c ); //menampilkan karakter dalam file
         c = fgetc ( fp ); //membaca karakter dalam file
   }

   fclose( fp ); // menutup file
}

Program ini akan membaca isi dari file tes.txt. Agar program ini dapat berjalan maka file tes.txt harus ada pada direktori letak program di atas berada.

0 komentar:

Posting Komentar