• Giga@hdv-tech.com
  • Layanan Daring 24 jam:
    • 7189078c
    • sns03
    • 6660e33e
    • youtube 拷贝
    • Instagram

    C, Membaca dan Menulis Dokumen

    Waktu posting: 11 Agustus-2023

    Menjelaskan bagaimana pemrogram C membuat, membuka, dan menutup file teks, atau file biner.

    File, berarti serangkaian byte, apakah itu file teks atau file biner, Bahasa C, tidak hanya menyediakan akses ke fungsi tingkat atas, tetapi juga menyediakan panggilan (OS) yang mendasari untuk memproses file di perangkat penyimpanan .Bab ini akan menjelaskan panggilan penting dalam manajemen dokumen.

    membuka file

    Biasanya menggunakan fungsi fopen () untuk membuat file baru atau membuka file yang sudah ada, panggilan ini menginisialisasi objek bertipe FILE yang berisi semua informasi yang diperlukan untuk mengontrol aliran.Berikut adalah prototipe dari pemanggilan fungsi ini:

    FILE *fopen (const char * nama file , const char * mode );

    Di sini nama file adalah string untuk memberi nama file, nilai mode akses dapat berupa salah satu dari nilai berikut:

    pola

    keterangan

    r

    Buka file teks yang ada yang memungkinkan untuk dibaca.

    w

    Buka file teks yang memungkinkan penulisan ke file.Jika file tidak ada, dibuat file baru.Di sini, program Anda menulis konten dari awal file.Jika file ada, itu akan dipotong menjadi panjang nol dan ditulis ulang.

    a

    Buka file teks dan tulis ke file dalam mode penambahan.Jika file tidak ada, dibuat file baru.Di sini, program Anda menambahkan konten ke file yang sudah Anda miliki.

    r+

    Buka file teks yang memungkinkan Anda membaca dan menulis file.

    w+

    Buka file teks yang memungkinkan Anda membaca dan menulis file.Jika file sudah ada, file dipotong menjadi panjang nol, dan jika file tidak ada, file baru akan dibuat.

    a+

    Buka file teks yang memungkinkan Anda membaca dan menulis file.Jika file tidak ada, dibuat file baru.Pembacaan dimulai di awal file, dan penulisan hanya dalam mode penambahan.

    Jika file biner diproses, gunakan mode akses berikut untuk menggantikan yang di atas:

    "rb", "wb", "ab", "rb+", "r+b", "wb+", "w+b", "ab+", "a+b"

    berkas tertutup

    Untuk menutup file, gunakan fungsi fclose().Prototipe fungsinya adalah sebagai berikut:

    int fclose ( FILE *fp );

    • Jika file berhasil ditutup, fungsi fclose() mengembalikan nol, dan jika kesalahan mengembalikan EOF.Fungsi ini, pada kenyataannya, menghapus data dari buffer, menutup file, dan melepaskan semua memori yang digunakan untuk file tersebut.EOF adalah konstanta yang didefinisikan dalam file header stdio.h

    Pustaka standar C menyediakan berbagai fungsi untuk membaca dan menulis file dengan karakter atau sebagai string dengan panjang tetap.

    Menulis ke file

    Berikut adalah fungsi paling sederhana untuk menulis karakter ke aliran:

    int fputc ( int c , FILE *fp );

    Fungsi fputc () menulis nilai karakter dari parameter c ke dalam aliran keluaran yang ditunjuk oleh fp.Jika penulisan berhasil, ia mengembalikan karakter tertulis dan EOF jika terjadi kesalahan.Anda dapat menggunakan fungsi berikut untuk menulis string yang diakhiri dengan null ke aliran:

    int fputs ( const char *s , FILE *fp );

    Fungsi fputs () menulis string s ke aliran keluaran tempat fp menunjuk.Jika penulisan berhasil, ia mengembalikan nilai non-negatif dan EOF jika terjadi kesalahan.Anda juga dapat menggunakan fungsi int fprintf (FILE * fp, const char * format,...) menulis string ke file tersebut.Coba contoh berikut:

    Catatan: Pastikan Anda memiliki direktori tmp yang tersedia, dan jika tidak ada, Anda harus membuatnya di komputer terlebih dahulu.

    /tmp biasanya merupakan direktori sementara di sistem Linux.Jika Anda menjalankan sistem Windows, Anda perlu memodifikasinya ke direktori yang ada di lingkungan lokal, seperti: C:\tmp, D:\tmp, dll.

    contoh hidup

    #termasukint main() { FILE *fp = NULL ;fp = fopen ("/tmp/test.txt ", "w+");fprintf(fp , "Ini sedang menguji fprintf...\n ");fputs ("Ini sedang menguji fputs...\n ", fp );ftutup (fp );}

    Ketika kode di atas dikompilasi dan dieksekusi, file baru test.txt dibuat di direktori / tmp.Dan menulis ke dua baris menggunakan dua fungsi yang berbeda.Mari kita baca file ini selanjutnya.

    Baca filenya

    Berikut ini adalah fungsi paling sederhana untuk membaca satu karakter dari sebuah file:

    int fgetc( FILE * fp );

    Fungsi fgetc () membaca karakter dari file input yang ditunjuk oleh fp.Nilai yang dikembalikan adalah karakter baca dan EOF jika terjadi kesalahan.Fungsi berikut memungkinkan Anda membaca string dari aliran:

    char *fgets ( char *buf , int n , FILE *fp );

    Fungsi fgets() membaca n-1 karakter dari input stream yang diarahkan oleh fp.Itu menyalin string baca ke buffer buf dan menambahkan karakter nol di bagian akhir untuk mengakhiri string.

    Jika fungsi ini menemui karakter garis putus-putus '\ n' atau EOF di akhir file sebelum membaca karakter terakhir, maka hanya kembali ke karakter baca, termasuk jeda baris.Anda juga dapat menggunakan fungsi int fscanf (FILE * fp, const char * format,...) untuk membaca string dari file, tetapi fungsi ini berhenti membaca saat menemukan jeda spasi dan baris pertama.

    contoh hidup

    #termasukint main() { FILE *fp = NULL ;penggemar char [255];fp = fopen ("/tmp/test.txt ", "r ");fscanf (fp , "%s", buff );printf ("1: %s \n ", buff );fgets (buff , 255, (FILE *)fp );printf ("2: %s \n ", buff );fgets (buff , 255, (FILE *)fp );printf ("3: %s \n ", buff );ftutup (fp );}

    Ketika kode di atas dikompilasi dan dieksekusi, ia membaca file yang dibuat di bagian sebelumnya, menghasilkan hasil sebagai berikut:

    1: Ini 2: sedang menguji fprintf...

    3: Ini adalah pengujian untuk fputs...

    Pertama, metode fscanf() hanya membaca This .karena menemui ruang di belakang.Kedua, panggil fungsi fgets () untuk membaca bagian yang tersisa hingga akhir baris.Terakhir, panggil fgets() untuk membaca baris kedua secara lengkap.

    Fungsi I/O biner

    Dua fungsi berikut digunakan untuk input dan output biner:

    size_t fread (void *ptr , size_t size_of_elements , size_t number_of_elements , FILE *a_file );size_t fwrite (const void *ptr , size_t size_of_elements , size_t number_of_elements , FILE *a_file );

    Kedua fungsi membaca dan menulis untuk blok penyimpanan-biasanya array atau struktur.

    Di atas tentang pembacaan dan penulisan file C adalah milik HDV Phoelectron Technology Ltd., sebuah operasi teknis perangkat lunak.Dan perusahaan untuk peralatan terkait jaringan (seperti: ACONU/ komunikasiONU/ cerdasONU/ seratONU, dll.) telah menyatukan tim perangkat lunak yang kuat, untuk setiap pelanggan menyesuaikan permintaan eksklusif yang membutuhkannya, juga membuat produk kami lebih cerdas dan canggih.



    web