File Data Pertemuan ke 13..

Slides:



Advertisements
Presentasi serupa
8. FILE.
Advertisements

File Handling.
Input/Output.
Pemrograman Berorientasi Objek
Mengamati Proses pada SO Linux
DASAR PEMROGRAMAN OPERASI FILE
Akses File As’ad Djamalilleil
PERTEMUAN XI OPERASI FILE JURUSAN TELEKOMUNIKASI POLITEKNIK ELEKTRONIKA NEGERI SURABAYA Oleh : Muh. Zen S. Hadi, ST.
Algoritma dan Struktur Data Daniel Riano Kaparang.
PERTEMUAN VIII STRUKTUR LANJUT JURUSAN TELEKOMUNIKASI POLITEKNIK ELEKTRONIKA NEGERI SURABAYA Oleh : Muh. Zen S. Hadi, ST.
//program untuk menulis ke dalam file teks kemudian menampilkan isi file ke layar #include Void main() { const int mak 80; file p; // deklarasi file.
Baca Tulis File Untuk dapat membaca atau menulis data dari/ke sebuah file maka langkah yang perlu dilakukan adalah: membuka file - mendefinisikan variabel.
Baca Tulis File Untuk dapat membaca atau menulis data dari/ke sebuah file maka langkah yang perlu dilakukan adalah: membuka file - mendefinisikan variabel.
8. FILE.
CSE1301 Sem /8/2017 File I/O Lecture 19: File I/O.
MINGGU 5 Web Teknologi I (MKB511C)
Form.
INSTRUKSI MASUKAN DAN KELUARAN
7. 1 Bab 07 Menginput Nilai melalui Keyboard.
ARRAY Dr. Lily Wulandari.
Teknik Pemrograman Terstruktur 2
Sistem Terdistribusi 010 – File Service Oleh : Muh. Ary Azali.
Perintah Input-OutPut
Materi 7 Lintas Data Rekam Baca File. Introduction Lintas data Rekam Baca meliputi perekaman data kedalam media rekam magnetik, pembacaan data dari media.
Dasar Pemrograman Komputer [TKL-4002] 2010
Array dan String Array dan String.
PERTEMUAN IV STRING JURUSAN TELEKOMUNIKASI
Algoritma & Struktur Data Linked List Evangs Mailoa.
STRUKTUR DATA Pointer dan Function
PART 7 Array DOSEN : AHMAD APANDI, ST.
Pertemuan String Matakuliah : T0616 / Algoritma dan Pemrograman
Statement Input – Output
Pointer.
Dasar Pemrograman Komputer
1 Latihan Pertemuan String Matakuliah: T0616 / Algoritma dan Pemrograman Tahun: 2007 Versi: 1/0.
Unfikasi, Runut Balik, Trace, Masukan dan Keluaran
Matakuliah : T0016 / Algoritma dan Pemrograman Tahun : 2007 Versi : 6
Algoritma dan Pemrograman II STT Wastukancana Purwakarta
Fungsi-fungsi tambahan dalam PHP Session dan Cookie
PHP By : Lisda Juliana P.,Ssi..
File & Stream Kegunaan File :
1 Pertemuan 1 Pengenalan Pemrograman Terstruktur C Matakuliah: H0112 – Pemrograman Bahasa Tingkat Tinggi Tahun: 2005/2006 Versi: xxx/2.
TEE 2103 Algoritma dan Pemrograman
Pemrograman WEB I Pertemuan 9.
Input dan Output TEE 2103 Algoritma dan Pemrograman
Operasi File Operasi File.
Algoritma dan Struktur Data
OPERASI FILE Sugondo Hadiyoso.
Operasi File Pertemuan ke-12 Bahasa C.
DASAR PEMROGRAMAN OPERASI FILE
MATERI 1 Review dan Pengantar C (Struktur Bahasa C, Variabel, Konstanta, Tipe Data, Operator)
TEL 2112 Dasar Komputer & Pemograman Larik (Array)
Gambaran Umum dari judul yang kami ajukan adalah :
As’ad Djamalilleil Akses File As’ad Djamalilleil
Bagian 4 LINTAS DATA.
Input Dan Output.
DASAR PEMROGRAMAN File.
PERTEMUAN 9 PHP 2.
VARIABEL DAN TIPE DATA Erizal, S.Si, M.Kom Sistem Informasi
PERINTAH INPUT DAN OUTPUT
Input dan Output Pertemuan ke-3 Bahasa C.
Mencetak & Membaca Data
PENULISAN DAN PEMBACAAN FILE
ALGORITMA DAN PEMROGAMAN
Baca Tulis File Untuk dapat membaca atau menulis data dari/ke sebuah file maka langkah yang perlu dilakukan adalah: membuka file - mendefinisikan variabel.
DASAR PEMROGRAMAN OPERASI FILE
MATERI 1 Review dan Pengantar C (Struktur Bahasa C, Variabel, Konstanta, Tipe Data, Operator)
File & Stream Kegunaan File :
Bab 13 Manipulasi Fail.
ARRAY.
Transcript presentasi:

File Data Pertemuan ke 13.

File Variabel array dan variabel lain yang telah dipelajari selalu menggunakan variabel yang disimpan pada memory. Artinya setelah program selesai, data pada memory tidak bisa diakses kembali atau hilang. Demikian pula jika komputer tidak mendapatkan energi sehingga program terminated, semua data akan hilang. Hal ini disebabkan memory komputer (primary storage), bersifat volatile. Agar data (hasil entry) tidak hilang maka dilakukan penyimpanan ke suatu media dalam bentuk file data. Dengan demikian file data bisa dibaca dan ditulis kembali sesuai kebutuhan.

File bahasa c memperlakukan file sebagai stream. Stream adalah kumpulan karakter yang disusun dalam baris-baris yang berpindah dari satu media ke media lain pada sistem komputer. Semua data masukan dan keluaran berupa stream. Setiap stream berasosiasi dengan sebuah file C mempunyai 3 buah standar stream: Standard input stream: mengatur aliran data masukan melalui ketikan keyboard (dalam c diatur di library stdin). Standard output stream: mengatur aliran data keluaran ke layar monitor (dalam c diatur di library stdout). Standard error stream: mengatur tampilan pesan kesalahan ke layar monitor (dalam c diatur di library stderr)

File Operasi file: Manipulasi data (create, update, insert/append) Manipulasi terhadap file (delete file, rename file). Jenis-jenis file: Text file / ASCII file: file disimpan dalam bentuk text/ karakter ASCII. Binaryfile: file yang menyimpan data numeric tetap dalam format sesuai ketentuan micro processor. Contoh struct : struct brg { char kd[4],nm[26]; int harga; float qty; };

File manipulasi data didalam suatu file: Membuka File Menulis ke dalam File Membaca dari File Penanda EOF dan menutup File

File : Opening file Notasi: FILE * fopen(char *namafile, char *mode); *namafile : nama file fisik yang akan dimanipulasi misal “data.txt” *mode : file dibuka untuk dibaca saja, atau ditulis saja, atau untuk ditambah data, dll. Mode bisa dilihat di tabel berikut ini Contoh file dibuka untuk tujuan pembacaan : FILE *pf; pf = fopen(“D:\DATA.TXT”,”r”);

File : Opening file - mode fungsi Jika File Sudah Ada Tidak Ada r Read (baca) file dibuka file gagal dibuka w Write (tulis) File dihapus & dibuat file baru File dibuat a Append(tambah) Data diletakkan di bagian akhir File (end of file) r+ Read (bisa Write) Data yang sudah ada di AWAL file akan ditimpa dengan data baru w+ Write (bisa Read) File ditimpa dengan file baru. a+ Append (bisa Read) Data baru ditambahkan ke bagian akhir dari file (end of file) — tidak ditimpa.

File : Functions to read file content Nama fungsi kegunaan prototype penulisan function getc() membaca SATU KARAKTER yang ada didalam file int getc(FILE *fp); fp = pointer ke structure FILE fgets() membaca SATU BARIS DATA yang ada didalam file. char *fgets(char *str, int n, FILE *fp); str = string nilai kembalian / hasil pembacaan dari file. n = jumlah panjang string maksimal yang dimasukkan ke str. fp = pointer ke structure FILE fscanf() mengambil data dengan format tertentu yang ada didalam file. int fscanf(FILE *fp, char *format, …); fp = pointer ke structure FILE. format = menunjukan format data yang akan dibaca.

File : Functions to write to a file Nama fungsi Kegunaan prototype penulisan function putc () menuliskan SATU KARAKTER ke dalam file. int putc(int c, FILE *fp); c = karakter yang akan dituliskan. fp = pointer ke structure FILE fputs () menuliskan SATU BARIS DATA ke dalam file. char *fputs(char *str, FILE *fp); str = string yang akan dituliskan fp = pointer ke structure FILE fprintf () menuliskan data dengan format tertentu ke dalam file. int fprintf(FILE *fp, char *format, …); fp = pointer ke structure FILE. format = format data yang akan dibaca.

File : EOF marker & Closing File Nama fungsi kegunaan prototype penulisan function feof() Mendeteksi akhir data dari suatu file—digunakan untuk file text. Mengembalikan 0 selama belum mencapai akhir file. int feof(FILE *fp); fp = pointer ke structure FILE fclose() Menutup/Memutuskan koneksi dari file pointer ke file external yang bersangkuta. int fclose(FILE *fp); fp = pointer ke structure FILE

File : Sample Program(1) masukan keluaran di file data.txt N = 3 A N = 4 AB ^Z ABC   ABCD // Menulis per karakter ke file data.txt #include <stdio.h> #include <conio2.h> int main() { FILE *fout; int n,i,j; fout = fopen(“data.txt","w"); // file dibuka untuk ditulis printf("N = ");scanf("%d",&n); while(!feof(stdin) ) { for(i=0;i<n;i++) { for(j=0;j<=i; j++) putc(65+j, fout); putc('\n',fout); } fclose(fout);

File : Sample Program(2) // Menulis ke file per kalimat. #include <stdio.h> #include <ctype.h> #include <conio2.h> #include <string.h> int main(){ FILE *fout; char kalimat[50]; fout = fopen("klm.txt","a"); printf("Ketik Kalimat, diakhiri dengan Ctrl Z \n"); gets(kalimat); while(!feof(stdin)) { fputs(kalimat,fout); fputc('\n',fout); } fclose(fout);return 1; Input Data tersimpan di file klm.txt Ketik Kalimat, diakhiri dengan Ctrl Z c:>type klm.txt UMN Universitas Multimedia Nusantara Serpong ^Z

File : Field , Record & file. FILE Prestasi Akademik Mahasiswa 0101900948 susilo 4.00 Record ke 1 0102930293 bambang 3.90 Record ke 2 0192192112 yudianto 2.80 Record ke 3 0104029392 budiono Record ke 4 field NIM field NAMA field IPK

File : Record Access Sequential VS Random Akses file secara Sequential: record harus dibaca mulai record pertama. Akses file secara Random: pembacaan record dilakukan langsung ke posisi record yang dituju. Access Method Relevance functions Random fseek() , fwrite(), fread() Sequential fscanf(), fprintf(), fwrite() , fread()

File : Functions Explanation size_t fwrite(const void *ptr, size_t size, size_t n, FILE * stream); Function ini menambah n item data masing-masing berukuran size ke file stream. Data yang akan ditulis ditunjuk oleh pointer ptr. Jika process berhasil, function ini mengembalikan jumlah item data yang tertulis. Apabila terjadi kesalahan maka akan dikembalikan angka lain. size_t fread(void * ptr, Function ini membaca n elemen data, masing-masing berukuran size dari file stream ke dalam suatu blok yang ditunjuk pointer ptr. Jika proses berhasil maka function ini mengembalikan jumlah elemen data yang terbaca. Apabila tidak ada data yang terbaca maka function ini menghasilkan 0.

File : Functions Explanation fseek(FILE *stream, long offset, int whence); Function ini memindahkan penunjuk posisi file stream ke n byte dari lokasi file relatif terhadap whence. Angka n dinyatakan dengan offset. Untuk stream yang berupa text mode offset harus bernilai 0 atau nilai lain yang dikembalikan function ftell(). Whence harus berupa nilai 0,1, atau 2 yg mewakili tiga simbolic constant. Whence : SEEK_SET = 0 = Awal File. SEEK_CURR = 1 = Posisi pointer saat itu. SEEK_END = 2 = End of File.

File : sample program sequential acccess (text) append to a file "LINE" sequential file. FILE TEXT read the records and display them on your monitor #include <stdio.h> #include <string.h> #include <math.h> #include <stdlib.h> #include <conio2.h> struct t_akad { char nim[11]; char nama[21]; float ipk; }; char* substr(char* buffer, char* str, int start, int end){ int i, x = 0; for(i = start ; i <= end; i++) buffer[x++] = str[i]; buffer[x] = '\0'; return buffer; } int main() { FILE *f_akad; struct t_akad r_akad; char sipk[5], record[101];

File : sample program sequential acccess (text) f_akad = fopen("akad.txt","a"); // Append Process do { fflush(stdin); // flushing out unnecessary character(s) printf("NIM : ");gets(r_akad.nim); if(strlen(r_akad.nim) == 0) break; printf("Nama : ");gets(r_akad.nama); printf("IPK : ");scanf("%f",&r_akad.ipk); fprintf(f_akad,"%-10s %-20s %4.2f\n", r_akad.nim, r_akad.nama, r_akad.ipk); } while(1); fclose(f_akad); f_akad = fopen("akad.txt","r"); // Reading and displaying process. printf("NIM NAMA IPK\n"); if(fgets(record,100,f_akad) == 0 ) break; substr(r_akad.nim,record,0,9); substr(r_akad.nama,record,11,30); substr(sipk,record,31,35); sipk[4] = NULL; r_akad.ipk = atof(sipk); printf("%-10s %-21s %4.2f\n",r_akad.nim,r_akad.nama,r_akad.ipk); getch(); return 0; }

File : sample program sequential acccess (Biner) #include <stdio.h> #include <string.h> #include <math.h> #include <stdlib.h> #include <conio2.h> struct t_akad { char nim[11]; char nama[21]; float ipk; }; int main() { FILE *f_akad; struct t_akad r_akad; char sipk[5], record[101]; f_akad = fopen("akadbiner.txt","a"); do { fflush(stdin); // flushing out unnecessary character(s) printf("NIM : "); gets(r_akad.nim); if(strlen(r_akad.nim) == 0) break; printf("Nama : "); gets(r_akad.nama); printf("IPK : "); scanf("%f",&r_akad.ipk); fwrite(&r_akad,sizeof(r_akad),1,f_akad); } while(1); fclose(f_akad); append to a sequential file (File BINER),read the records and display them on your monitor

File : sample program sequential acccess (Biner) // Reading and displaying process. f_akad = fopen("akadbiner.txt","r"); printf("NIM NAMA IPK\n"); while(fread(&r_akad,sizeof(r_akad),1,f_akad)==1) { printf("%-10s %-21s %4.2f\n",r_akad.nim, r_akad.nama,r_akad.ipk); }; fclose(f_akad); getch(); }

File : sample program random access // Random Access file. Create record kosong. #include <stdio.h> #include <conio2.h> struct tnasabah{ int norek; char nama[20]; double saldo; }; int main() { FILE *fnasabah; struct tnasabah nasabah={0,"",0.0}; int i; fnasabah = fopen("nasabah.dat","w"); for(i=0;i<100;i++) fwrite(&nasabah,sizeof(struct tnasabah),1,fnasabah); fclose(fnasabah); }

File : sample program random access: adding/find record Random Access file. Setelah menambah record kosong, menambah record ke file akses langsung, kalau sudah ada data ditampilkan, kalau belum ada di simpan ke file. #include <stdio.h> #include <conio2.h> struct tnasabah{ int norek; char nama[20]; double saldo; }; int main() { FILE *fnasabah; struct tnasabah nasabah; if((fnasabah = fopen("nasabah.dat","r+"))==NULL) { printf("File nasabah.dat tidak ditemukan .... "); getch(); return 0; }

File : sample program random access: adding/find record printf("No Rekening : ");scanf("%d",&norek); if(norek==0) break; fseek(fnasabah,(norek-1) * sizeof(struct tnasabah),SEEK_SET); fread(&nasabah, sizeof(struct tnasabah),1,fnasabah); if(nasabah.norek==0) { printf("Nama : ");scanf("%s",nasabah.nama); printf("Saldo : ");scanf("%lf",&nasabah.saldo); nasabah.norek = norek; fwrite(&nasabah, sizeof(struct tnasabah),1,fnasabah); } else { printf("Sudah pernah dientry...\n"); printf("nama %-20s saldo %10.2lf",nasabah.nama,nasabah.saldo); getch(); printf("\n"); }while(1); fclose(fnasabah); return 1;

File : printing to printer #include <stdio.h> #include <stdlib.h> #include <conio2.h> int main() { int i, j; for(i=0;i<20;i++) { for(j=0;j<=i;j++) fprintf(stdprn,"^^"); fprintf(stdprn,"\n"); } getch(); // the code is only running on turbo c++ not on devc++ ; Somehow dev does not recognize stdprn

References : Thompson SN, 2009, Algoritma dan Struktur Data dengan C. Deitel, PJ, HM.Deitel, 2007, C How to Program, 5th Edition.