Dasar Operasi File Pertemuan : Disusun oleh : Danang Junaedi Jurusan Teknik Informatika Universitas Widyatama Overview Tujuan Instruksional Jenis File Operasi File Tahap Operasi Dasar File Mengaktifkan atau Membuka File Memproses File Menutup File Jurusan Teknik Informatika II- Universitas Widyatama Tujuan Instruksional Dapat menjelaskan dasar-dasar pengelolaan file (input, baca, output) menggunakan file sequential Dapat mengimplementasikan pengelolaan file (input, baca, output) menggunakan file sequential Jurusan Teknik Informatika II-3 Universitas Widyatama
Jenis File Isi File File Teks File Biner (bukan teks) Cara Pengaksesan File File Sequential File Random Catt : Untuk File biner dan file random anda harus mencari referensi sendiri OK!!! Jurusan Teknik Informatika II-4 Universitas Widyatama Operasi File File Berpenyangga (Buffered File) Menggunakan suatu penyangga (buffer) sebagai penampung sementara data Pengaksesan data file dilakukan melalui perantara penyangga (buffer) Header file yang digunakan yaitu stdio.h (C & C++) dan fstream.h (C++) Biasanya digunakan untuk file sequential dan file random Jurusan Teknik Informatika II-5 Universitas Widyatama File tidak berpenyangga Operasi File Tidak menggunakan penyangga (buffer) Pengaksesan data file dilakukan langsung ke file pada disk/media penyimpanan dimana file itu di simpan Header file yang digunakan yaitu stdio.h (C & C++) dan fstream.h (C++) Biasanya digunakan untuk file biner dan menggunakan system operasi UNIX Jurusan Teknik Informatika II-6 Universitas Widyatama
Tahap Operasi Dasar File Mengaktifkan atau membuka file Memproses file Menutup file Jurusan Teknik Informatika II-7 Universitas Widyatama Mengaktifkan atau Membuka File () Header File : stdio.h FILE *Pointer_File; (Buffer untuk file) Pointer_File=fopen(char *Nama_File, char *Mode) atau Pointer_File=fopen( <Nama File>, <Mode File> ); Mode File : r, w, a, t, b, r+, w+, a+, rb, wb, ab, rb+, wb+, ab+ ex : FILE *File_Coba File_Coba=fopen( Coba.Dat, w ); Catt: Coba cari fungsi dari mode file di atas!!! Jurusan Teknik Informatika II-8 Universitas Widyatama Mengaktifkan atau Membuka File () ofstream Pointer_File; atau (Buffer ofstream Pointer_File( <Nama_File>, <Mode File>); file) Pointer_File.open( <Nama_File> ) atau Pointer_File.open( <Nama File>, <Mode File>); Mode File : ios::app, ios::ate, ios::in, ios::out, ios::nocreate ios::noreplace, ios::true, ios::binary ex : ofstream File_Coba File_Coba.open( Coba.Dat,ios::app); atau bisa juga File_Coba.open( Coba.Dat,ios::app ios::out); Catt: Coba cari fungsi dari mode file di atas!!! Jurusan Teknik Informatika II-9 Universitas Widyatama 3
Header File : stdio.h Memproses file () Menyimpan data ke dalam file Perintah yang digunakan : fputc(), fgetc(), putw(), getw(), fputs(), fgets(), fscanf(), fprintf(), fwrite(), fread() ex : fprintf(file_coba, %d %s %5.f,Nomor, Nama, Nilai); fscanf(stdin, %d %s %f,&nomor, &Nama, &Nilai); Membaca data Perintah yang digunakan : rewind(), fseek(), ftell(), fread(), fscanf() ex : fread(file_coba, %d %s %5.f,Nomor, Nama, Nilai); fscanf(file_coba, %d %s %5.f,Nomor, Nama, Nilai); Catt: Coba cari fungsi dari perintah di atas!!! Jurusan Teknik Informatika II- Universitas Widyatama Memproses file () Menyimpan data ke dalam file ofstream Pointer_File; atau (Buffer ofstream Pointer_File( <Nama_File>, <Mode File>); file) Pointer_File.put(); atau Pointer_File<<Nama_Data; atau Pointer_File.write((char *)&Rekaman, sizeof(rekaman)); ex : FILE *File_Coba File_Coba=fopen( Coba.Dat, w ); Catt : Cari apa perbedaan put(), <<,write() di atas!!! Jurusan Teknik Informatika II- Universitas Widyatama Memproses file (3) Membaca data int Max=<Jumlah max karakter per baris>; char penyangga[max]; ifstream Pointer_File; atau (Buffer ifstream Pointer_File( <Nama_File>, <Mode File>); file) Pointer_File.get(); atau Pointer_File.getline(penyangga, Max); atau Pointer_File.read((char *)&Rekaman, sizeof(rekaman)); ex : ifstream File_Coba ( Coba.Dat,ios::app ios::out); File_Coba.getline(penyangga, Max); atau File_Coba.read((char *)&Mahasiswa, sizeof(mahasiswa)); Catt : Cari apa perbedaan get(), getline(), read() di atas!!! Jurusan Teknik Informatika II- Universitas Widyatama 4
Header File : stdio.h Menutup File fclose(pointer_file); {Menutup sebuah file yang aktif} atau fcloseall(pointer_file); {Menutup semua file yang aktif} ex : fcose(file_coba); fcloseall(); offstream Pointer_File; Pointer_File.close() (Buffer untuk file) Jurusan Teknik Informatika II-3 Universitas Widyatama Pengenalan Konsolidasi File Pertemuan : Disusun oleh : Danang Junaedi Jurusan Teknik Informatika Universitas Widyatama Overview Tujuan Instruksional Jenis Konsolidasi File Contoh Konsolidasi File Jurusan Teknik Informatika II-5 Universitas Widyatama 5
Tujuan Instruksional Mengenalkan proses konsolidasi dalam file Menjelaskan bentuk konsolidasi dalam file Jurusan Teknik Informatika II-6 Universitas Widyatama Jenis Konsolidasi File () Tanpa Separator (Tidak menggunakan pembatas untuk kelompok data tertentu) MARK Urutan Akses (satu per satu) Key Jurusan Teknik Informatika II-7 Universitas Widyatama Jenis Konsolidasi File () Dengan Separator (Menggunakan pembatas untuk kelompok data tertentu) MARK Separator Urutan Akses (satu per satu) Jurusan Teknik Informatika II-8 Universitas Widyatama 6
No 3 dst Tanpa Separator Kode K K K K3 K5 K5 dst Contoh Konsolidasi File Stock 3 5 dst Dengan Separator No 3 dst Kode Jurusan Teknik Informatika II-9 Universitas Widyatama K K K K3 K5 K5 dst Stock 3 5 dst Sepa rator Untuk bahan renungan bersama Apakah anda takut gagal? Sedemikian takutnya sampai anda tidak berusaha untuk mencoba? Coba anda pikirkan kembali, hal tersebut benar-benar tidak masuk akal. Dengan tidak mencoba barang sekalipun, sebenarnya anda SUDAH gagal. Jadi rasa takut gagal adalah penyebab kegagalan yang pasti. Apakah anda merasa takut? Coba perhatikan rasa takut anda. Perhatikan pesan yang berusaha disampaikannya. Rasa takut membuat anda lebih waspada. Rasa takut memberi energi ekstra. Rasa takut membuat anda mampu mengatasi tantangan tersulit. Tidak ada yang mampu mendorong sumber daya dalam diri anda - lebih dari rasa takut. Rasa takut sebenarnya ada untuk mendorong anda maju, bukan untuk menahan anda. Biarkan rasa takut mengajarkan anda. Biarkan rasa takut mempersiapkan anda. Tetapi jangan membuat rasa takut menghentikan anda. Saat rasa takut menahan anda, coba perhatikan baik-baik apa yang menyebabkan rasa takut - dan anda akan menemukan alasan untuk bergerak maju. Kegagalan paling abadi adalah kegagalan untuk mulai bertindak. Bila anda sudah mencoba - dan ternyata gagal, anda memperoleh sesuatu yang bisa dipelajari dan mungkin dicoba kembali. Anda tidak akan pernah gagal bila anda terus berusaha...! Jurusan Teknik Informatika II- Universitas Widyatama 7