Algoritma dan Pemrograman 8

Pada pertemuan ke 8 kami belajar tentang file processing

Ketika program C dijalankan ada 3 standard streams yang diaktifkan:
1. Standard Input Stream : Mengontrol stream input dari keyboard

2. Standard output Stream : Mengontrol stream output ke monitor

3. Standard error Stream : Mengontrol pesan error

– Definisi File
– File adalah kumpulan record (baris)
– Record adalah kumpu lan field (column)
– Field adalah blok byte
– Byte adalah kumpulan bit

FILE BINARY
menyimpan data numerik dalam format in line dengan format yang mikro-prosesor (contoh: Format sign-magnitude 2 ‘s complement).
Data yang hanya dapat dibuka oleh system (kata-kata atau hurufnya di .txt acak [cryptography])
Penulisan : FILE *fp;

Buffer Area
Buffer area adalah bagian dari memori yang digunakan sebagai ruang sementara sebelum data pindah ke sebuah file.

Contoh syntax :
FILE * fp;
(hati hati karena FILE menggunakan huruf besar)
(fp adalah pointer file awal dari buffer area)

Open File
Membuka File menggunakan fopen ():
FILE *fopen (const char *filename, const char *mode);
Contoh mode :
“r” membuka file untuk dibaca.
“w” membuat file untuk ditulis.
“A” membuka file untuk data append.
“r+” membuka file untuk membaca / menulis.
“w+” membuat file untuk membaca / menulis.
“a+” membuka file untuk membaca / tambahkan
“rb” membuka File (binary) untuk dibaca.
“wb” membuat file (binary) untuk menulis.
(Dalam penge-save-an Game sebaiknya menggunakan binary yaitu “rb” atau “wb” karena tidak dapat dibuka dengan notepad biasa)

Close File
int fclose (FILE *stream);
*harus ditutup agar bisa digunakan untuk aplikasi lainnya atau .txtnya akan digunakan terus menerus
fclose () didefinisikan di <stdio.h>
fclose () akan mengembalikan 0 jika berhasil, dan EOF jika error
EOF (End Of File) sama dengan -1 (EOF itu dibuat otomatis)
fclose () akan masuk ke buffer area dulu dan segera mengirimkan sisa data ke dalam file.

Input dan Output File

  • fgetc (INPUT)
    Syntax : int fgetc (FILE *stream);
    Membaca satu karakter(char) dari file.txt
    fgetc (stdin) ekuivalen dengan getchar ()
  • fputc (OUTPUT)
    Syntax : int fputc (int c, FILE * stream);
    Menulis/menaruh satu karakter(char) ke file.txt
    fputc (‘a’, stdout) sama dengan putchar (‘a’)
  • fgets (INPUT)
    Syntax : char *fgets( char *string, int n, FILE *stream );
    Membaca satu baris dari sebuah file yang berakhir dengan baris baru, atau maksimum n-1 jumlah karakter.
    Kembali string jika successful dan NULL jika error
  • fputs (OUTPUT)
    Syntax : int fputs( const char *string, FILE *stream );
    Menulis baris ke file
    Mengembalikan nilai non-negatif jika berhasi dan EOF jika error.
  • fscanf (INPUT)
    Syntax : int fscanf( FILE *stream, const char *format [, argument ]… );
    Membaca data dari file.txt dengan format scanf.
    mengembalikan jumlah field dan read jika successful, dan EOF jika error
  • fprintf (OUTPUT)
    Syntax : int fprintf( FILE *stream, const char *format [, argument ]…);
    Menulis data ke file.txt menggunakan format printf.
    Pengembalian byte written jika nilai successful dan negatif jika error.
  • fwrite
    Syntax : size_t fwrite( const void *buffer, size_t size, size_t count, FILE *stream );
    Menulis ke file sebanyak n size
    Writing a block of data in the buffer area to the file
    Return number of byte data written, and error otherwise.
  • fread
    Syntax : size_t fread( void *buffer, size_t size, size_t count, FILE *stream );
    Baca ukuran blok data dari file
    membaca dari file sebanyak n size
  • feof
    Syntax : int feof( FILE *stream );
    membaca terus menerus sampai file habis
    Mencari tahu apakah pointer telah mencapai end-of-file
    Kembali 0 jika tidak berakhir end-of-file

Leave a Reply

Your email address will not be published. Required fields are marked *