1 / 8

Bab 13

Bab 13. Manipulasi Fail. Fail Input dan Output. Input dan output piawai bagi aturcara C ialah papankunci dan paparan (monitor) Input juga boleh diterima dari fail, dan output boleh ditulis ke dalam fail  fail data Terdapat dua jenis fail data : fail teks dan fail binari

Télécharger la présentation

Bab 13

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Bab 13 Manipulasi Fail

  2. Fail Input dan Output • Input dan output piawai bagi aturcara C ialah papankunci dan paparan(monitor) • Input juga boleh diterima dari fail, dan output boleh ditulis ke dalam fail  fail data • Terdapat dua jenis fail data : fail teks dan fail binari • Setiap fail teks diakhiri dengan aksara akhir-fail (end-of-file)<eof> • Setiap baris diakhiri dengan aksara baris-baru <newline> • Contoh: Fail ini adalah fail teks.<newline> Ia terdiri dari dua baris. <newline> <eof>

  3. Membuka dan Menutup Fail • Penuding fail digunakan untuk membuka, menutup, dan merujuk kepada tempat tertentu dalam fail input dan output • Sintaks pengisytiharan penuding: FILE *nama_penuding; • Fail input dan output perlu dibuka sebelum boleh digunakan ( baca/tulis ) • Sintaks membuka fail: nama_penuding= fopen(nama_fail, mod_capaian); • Fail juga perlu ditutup selepas digunakan • Sintaks menutup fail: fclose(nama_penuding);

  4. Membuka dan Menutup Fail • Contoh: FILE *fmasuk, *fkeluar; : fmasuk = fopen(“Pelajar.dat”, “r”); fkeluar = fopen(“Keputusan”, “w”); : fclose(fmasuk); fclose(fkeluar); • Nama_fail boleh terdiri dari rentetan nama fail itu sendiri atau pembolehubah rentetan • Contoh menggunakan pembolehubah rentetan: FILE *fin; char fail_input[ ] = “Pelajar”; : fin = fopen(fail_input, “r”); :

  5. Membuka dan Menutup Fail • Mod_capaian menyatakan operasi yang boleh dilakukan terhadap fail yang dibuka Mod Maksud “r” hanya untuk dibaca (read) “w” hanya untuk ditulis – bermula dari awal fail (write) “a” hanya untuk ditulis – bermula dari akhir fail (append) “r+” untuk kemaskini – baca dan tulis “w+” untuk kemaskini – cipta, baca, dan tulis “a+” untuk kemaskini – baca keseluruhan fail, atau tulis dihujung fail

  6. Membuka dan Menutup Fail • Sekiranya proses membuka fail berjaya, penuding akan merujuk kepada baris pertama dan aksara pertama dalam fail yang dibuka • Jika tidak, penuding tidak menunjuk ke mana-mana, juga disebut sebagai bernilai NULL • Untuk mengelak ralat yang serious, aturcara perlu ditamatkan sekiranya terdapat fail yang gagal dibuka • Maka, segmen berikut penting: fin = fopen(“data”, “r”); if ( fin == NULL ) { printf(“Terdapat ralat semasa membuka fail data\n”); exit(1); }

  7. Menulis ke Fail Teks – fprintf() • Sintaks: fprintf( nama_penuding, format_output [ , senarai_nilai] ); • Contoh: fprintf( fout, “d%”, nom); • putc() digunakan untuk menulis satu aksara ke dalam fail • Sintaks putc(): putc(aksara, nama_penuding); • Contoh: putc(‘q’, fout);atau putc(aks, fout);yang mana aks adalah pencam pembolehubah yang menyimpan suatu nilai aksara • fputs() digunakan untuk menulis satu rentetan ke dalam fail • Sintaks fputs(): fputs(rentetan, nama_penuding); • Contoh: fputs(“baris pertama”, fout);atau fputs(baris, fout); yang mana baris adalah pencam suatu rentetan atau nama suatu tatasusunan aksara

  8. Membaca daripada Fail Teks – fscan() • Sintaks : fscanf(nama_penuding, format_output [ , senarai nilai ] ); • Contoh: fscanf(fin, “%d %c”, &matrik, &gred); • Membaca satu aksara dari fail getc() • Sintaks getc(): pembolehubah_aksara = getc(nama_penuding); • Contoh: while ( (aks = getc(fin) ) != EOF ) { : } • Membaca satu rentetan dari fail  fgets() • Sintaks fgets(): fgets(pubah_rentetan, pjg_maks_rentetan, nama_penuding); • Contoh: while ( (fgets(nama, 30, fin) ) != NULL ) { : }

More Related