PERTEMUAN XI OPERASI FILE JURUSAN TELEKOMUNIKASI POLITEKNIK ELEKTRONIKA NEGERI SURABAYA Oleh : Muh. Zen S. Hadi, ST.

Slides:



Advertisements
Presentasi serupa
[Kristanto:2009] perintah if berguna untuk memilih satu dari 2 atau lebih alternatif jawaban yang tersedia. Jika perintah if tersebut terdiri dari 2 atau.
Advertisements

8. FILE.
Mengamati Proses pada SO Linux
DASAR PEMROGRAMAN OPERASI FILE
PERTEMUAN II ARRAY JURUSAN TELEKOMUNIKASI
Fungsi (lanjutan) Pertemuan ke-9 Bahasa C.
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.
8. FILE.
STRUKTUR DATA.
Pertemuan 2 – Manipulasi String PEMINATAN PROGRAMMING & DESAIN GRAFIS SMAK ST. LOUIS 2 SURABAYA POWERED BY PUEDE EDUCATION.
CSE1301 Sem /8/2017 File I/O Lecture 19: File I/O.
3 Variabel, Konstanta Tipe Data dan dalam Bahasa C/C++ Java dan Bab
ARRAY Dr. Lily Wulandari.
BAHASA PEMROGRAMAN C LANGUAGE JURUSAN TELEKOMUNIKASI
PERTEMUAN VI POINTER LANJUT
PERTEMUAN X DATA TINGKAT LANJUT - 2 JURUSAN TELEKOMUNIKASI POLITEKNIK ELEKTRONIKA NEGERI SURABAYA Oleh : Muh. Zen S. Hadi, ST.
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.
Flow Control Nana Ramadijanti Laboratorium Computer Vision Politeknik Elekltronika Negeri Surabaya PENS-ITS 2008.
Review-Dasar Pemrograman Komputer
Algoritma dan Struktur Data
ARRAY OF STRUCT Apabila hendak menggunakan 1 struct untuk beberapa kali, ada 2 cara : Deklarasi manual #include typedef struct Mahasiswa { char.
PRAKTIKUM ALGORITMA DAN STRUKTUR DATA
Operasi pada pohon biner
PERTEMUAN IV STRING JURUSAN TELEKOMUNIKASI
File Data Pertemuan ke 13..
Alokasi Memori Yuliana Setiowati.
Pencarian Data Nurdiansah PTIK 09 UNM.
PERTEMUAN IX DATA TINGKAT LANJUT JURUSAN TELEKOMUNIKASI POLITEKNIK ELEKTRONIKA NEGERI SURABAYA Oleh : Muh. Zen S. Hadi, ST.
Algoritma & Struktur Data Linked List Evangs Mailoa.
POINTER (VAR.PENUNJUK)
STRUKTUR DATA (1).
Karakter & String.
Algoritma dan Struktur Data
PART 7 Array DOSEN : AHMAD APANDI, ST.
Bab 8 Pointer Riyanto Sigit Konsep Dasar Pointer  Variabel pointer sering dikatakan sebagai variabel yang menunjuk ke obyek lain  Variabel.
PERTEMUAN III ARRAY BAG II JURUSAN TELEKOMUNIKASI
SEMESTER GANJIL 2009/2010.
Fungsi Pertemuan 8 Bahasa C.
STRUCT OF ARRAY Apabila hendak menggunakan 1 struct untuk beberapa kali, ada 2 cara : Deklarasi manual #include typedef struct Mahasiswa { char.
Algoritma dan Struktur Data
STRUKTUR Struktur merupakan kumpulan elemen data yang digabungkan menjadi satu kesatuan data. Masing-masing elemen data tersebut dinamakan field atau elemen.
Bab 05 Tipe Data dan Mengisi Variabel
Rahmat D. R. Dako, ST, M.Eng.  Modul  void main (void)  Modul  fungsi = function  Keuntungan penggunaan Fungsi atau modul :  Program menjadi lebih.
Konsep Pemrograman Politeknik Elektronika Negeri Surabaya 2006
STRUKTUR Struktur merupakan kumpulan elemen data yang digabungkan menjadi satu kesatuan data. Masing-masing elemen data tersebut dinamakan field atau elemen.
Teknik Pemrog. Terstruktur 2
Matakuliah : T0016 / Algoritma dan Pemrograman Tahun : 2007 Versi : 6
Algoritma dan Pemrograman II STT Wastukancana Purwakarta
DASAR STRING PEMROGRAMAN SISTEM.
Fungsi, Array dan String
1 Pertemuan 1 Pengenalan Pemrograman Terstruktur C Matakuliah: H0112 – Pemrograman Bahasa Tingkat Tinggi Tahun: 2005/2006 Versi: xxx/2.
DASAR PEMROGRAMAN C Oleh : sgo.
Pertemuan 4 PROGRAMMING LANGUAGE.
Operasi File Operasi File.
Ucu Nugraha, ST. Algoritma.
Operasi File Pertemuan ke-12 Bahasa C.
DASAR PEMROGRAMAN OPERASI FILE
TEL 2103 Dasar Komputer & Pemograman Larik (Array)
Struktur Data (Data Structure) – IS 2313
Pemograman Terstruktur
TEL 2112 Dasar Komputer & Pemograman Larik (Array)
TEL 2112 Dasar Komputer & Pemograman Larik (Array)
Mengenal Model Data, Perintah I/O
Struktur Data Khoiriya Latifa, M.Kom.
Pemrograman Terstruktur
MATERI PERKULIAHAN PEMROGRAMAN I (Remedial)
DASAR PEMROGRAMAN OPERASI FILE
Transcript presentasi:

PERTEMUAN XI OPERASI FILE JURUSAN TELEKOMUNIKASI POLITEKNIK ELEKTRONIKA NEGERI SURABAYA Oleh : Muh. Zen S. Hadi, ST

JENIS FILE File Biner : file yang pola penyimpanan di dalam disk berbentuk biner, yaitu seperti bentuk pada memori RAM (komputer). Dipakai untuk menyimpan data kompleks, mis : struct. File Teks : file yang pola penyimpanan datanya dalam bentuk karakter. Dipakai untuk menyimpan data seperti karakter atau string.  Penentuan mode teks dan mode biner : t untuk mode teks b untuk mode biner Contoh : "rt": mode file adalah teks dan file hendak dibaca "rt+” : mode file adalah teks dan file bisa dibaca dan ditulisi. Bisa juga ditulis : "r+t" "rb": mode file adalah biner dan file hendak dibaca.

OPERASI BACA & TULIS FILE PER INT Perintah yang digunakan : _putw (), _getw(). Bentuk deklarasi : Kegunaan : _getw() untuk membaca sebuah data bertipe int dari file _putw() untuk menyimpan sebuah data bertipe int ke file. int _putw(int nilai, FILE *ptr_file); int _getw(FILE *ptr_file);

CONTOH PROGRAM TULIS #include main( ) { FILE *pf;/* ptr-ke-FILE */ int nilai, data, i; char jawab; if((pf=fopen("BILANGAN.DAT", "wb")) == NULL ) { printf("file gagal diciptakan!\n"); exit(1); } printf ("Masukkan banyaknya data : "); scanf ("%d",&data); for (i=0;i<data;i++) { printf("\nBilangan yang disimpan: "); scanf("%d", &nilai);/* baca nilai dr keyboard */ _putw(nilai, pf);/* baca bilangan ke file */ } printf("\nOke. Data sudah disimpan dalam file.\n"); fclose(pf);/* menutup file */ } Masukkan banyaknya data : 3 Bilangan yang disimpan : 70 Bilangan yang disimpan : 80 Bilangan yang disimpan : 90

CONTOH PROGRAM BACA #include main() { FILE *pf;/* ptr ke file */ int nilai, nomor = 0; /* Buka file biner untuk dibaca */ if((pf=fopen("BILANGAN.DAT","rb")) == NULL) { printf("File gagal dibuka.\n"); exit(1); } printf("Isi file BILANGAN.DAT : \n"); while(1)/* file berhasil dibuka */ { nilai = _getw(pf);/* Baca sebuah int dr file */ if (feof(pf) != 0) break; /*Jika akhir file, keluar loop*/ printf("%2d. %d \n", ++nomor, nilai); /* Tampilkan ke layar */ } fclose(pf);/* Tutup file */ } Isi file BILANGAN.DAT : feof : untuk mendeteksi akhir file

OPERASI BACA & TULIS FILE PER BLOK Fungsi : untuk menyimpan atau membaca data file dalam bentuk kesatuan blok (sejumlah byte), misal float atau struct. Perintah yang digunakan : fread () dan fwrite (); Bentuk deklarasi : dengan : buffer : pointer yang menunjuk ke alamat memori jum_byte : jumlah byte yang akan dibaca atau disimpan n : byknya blok data berukuran jum_byte yg akan ditulis / dibaca ptr_file : pointer-ke-FILE yang berisi nilai keluaran dari fopen(). int fread(void *buffer, int n, FILE *ptr_file); int fwrite(void *buffer, int jum_byte, int n, FILE *ptr_file);

CONTOH PROGRAM TULIS #include main() { FILE *f_struktur; char jawaban; int sudah_benar; struct { char judul[20]; char pengarang[20]; int jumlah; } buku; /* variabel buku bertipe struktur */ if((f_struktur = fopen("DAFBUKU.DAT", "wb")) == NULL) { printf("File tidak dapat diciptakan !\n"); exit(1); }

CONTOH PROGRAM TULIS – CONT. 1 do { fflush(stdin); /* Hapus isi penampung keyboard */ printf("Judul buku: "); gets(buku.judul); printf("Nama pengarang: "); gets(buku.pengarang); printf("Jumlah buku: "); scanf("%d", &buku.jumlah); fflush(stdin); /* Hapus isi penampung keyboard */ /* Rekam sebuah data bertipe struktur */ fwrite(&buku, sizeof(buku), 1, f_struktur); printf("\nMau merekam data lagi [Y/T] ?"); jawaban = getchar(); printf("\n"); } while(jawaban == 'Y' || jawaban == 'y'); fclose(f_struktur); /* Tutup file */ }

CONTOH PROGRAM BACA #include main() { FILE *f_struktur; int i=1; struct { char judul[20]; char pengarang[20]; int jumlah; } buku; /* variabel buku bertipe struktur */ if((f_struktur = fopen("DAFBUKU.DAT", "rb")) == NULL) { printf("File tidak dapat dibuka !\n"); exit(1); } printf("%2s. %-30s %-30s %s\n\n", "No", "Judul Buku", "Nama Pengarang", "Jumlah"); /* diulang selama masih ada record yg terbaca dlm file */ while(fread(&buku, sizeof(buku), 1, f_struktur) == 1) printf("%2d. %-30s %-30s %4d\n", i++, buku.judul, buku.pengarang, buku.jumlah); printf("\n"); fclose(f_struktur);/* Tutup file */ } Menyatakan data sebanyak 1 x ukuran variabel struct buku Ukuran char-nya harus sama dengan yang di program tulis

OPERASI BACA & SIMPAN DATA STRING PADA FILE Perintah yang digunakan : fgets() dan fputs(). Bentuk deklarasi : Kegunaan : fputs() : menyimpan string str ke dalam file. fgets() : membaca string dari file sampai ditemukannya karakter baris baru '\n' atau setelah (n-1) karakter, dengan n adalah panjang maksimal string yang dibaca per waktu-baca. int fputs(char *str, FILE *ptr_file); char fgets(char *str, int n, FILE *ptr_file); Note :  Saat simpan, fputs() tidak menambahkan karakter baris-baru ('\n') dengan sendirinya, dan karakter null tidak ikut disimpan.  Baik fgets() maupun fputs() digunakan untuk file teks.

CONTOH PROGRAM TULIS - 1 #include main( ) { FILE *pf;/* ptr-ke-FILE */ int data, i; char nama[40]; if((pf=fopen("latihan.txt", "w")) == NULL ) { printf("file gagal diciptakan!\n"); exit(1); } printf ("Masukkan banyaknya data : "); scanf ("%d",&data); for (i=1;i<=data;i++) { printf("\nNama ke %d : ",i); fflush(stdin); gets(nama); strcat(nama,”\n”); fputs(nama, pf); } printf("\nOke. Data sudah disimpan dalam file.\n"); fclose(pf);/* menutup file */ }

#include main( ) { FILE *pf;/* ptr-ke-FILE */ int data, i; char nama[40]; if((pf=fopen("latihan.txt", "w")) == NULL ) { printf("file gagal diciptakan!\n"); exit(1); } printf("\nNama ke %d : ",i); fflush(stdin); gets(nama); fputs(nama, pf); printf("\nOke. Data sudah disimpan dalam file.\n"); fclose(pf);/* menutup file */ } CONTOH PROGRAM TULIS - 2

CONTOH PROGRAM BACA #include main( ) { FILE *pf;/* ptr-ke-FILE */ int data, i; char nama[40]; if((pf=fopen("latihan.txt", "r")) == NULL ) { printf("file gagal dibuka!\n"); exit(1); } /*Baca file per string sampai ditemui EOF*/ while (fgets(nama,6,pf)) printf ("%s\n",nama); fclose(pf);/* menutup file */ } Hanya mencetak 6 karakter per baris

AKSES FILE BINER SCR ACAK Tujuan : membaca data di tengah file scr cepat. Perintah yang digunakan : fseek (). Bentuk deklarasi : dengan : ptr_file adalah pointer yang berasal dari keluaran fopen() offset menyatakan jumlah byte terhadap posisi posisi dapat diisi suatu nilai yang tertera pada tabel int fseek(FILE *ptr_file, long int offset, int posisi); Prototype : stdio.h

CONTOH APLIKASI fseek () fseek(pf, 3, SEEK_SET); fseek(pf, 3, SEEK_END); fseek(pf, 3, SEEK_CURR);

CONTOH PROGRAM fseek UNTUK CARI KARAKTER #include main() { FILE *pf; char kar,jawab; int i, no_record; long int offset_byte; if((pf = fopen("latihan.txt", "r")) == NULL) { printf("File tidak dapat dibuka !\n"); exit(1); } do { printf(“\n Nomor record dr data yg mau ditampilkan : "); scanf("%d", &no_record); offset_byte = (no_record-1); fseek(pf, offset_byte, SEEK_SET); kar=fgetc(pf);/* baca kar dari file */ putchar(kar);/* tampilkan ke layar*/ printf("\nMau mencoba lagi (Y/T)? "); jawab=getche(); } while (jawab == 'y' || jawab == 'Y'); printf("\n"); fclose(pf);/* Tutup file */ }

CONTOH PROGRAM fseek UNTUK CARI BILANGAN #include main() { FILE *pf; char jawab; int i, no_record,nilai; long int offset_byte; if((pf = fopen("bilangan.dat", "rb")) == NULL) { printf("File tidak dapat dibuka !\n"); exit(1); } do { printf ("\n"); printf("Nomor record dr data yg mau ditampilkan : "); scanf("%d", &no_record); offset_byte = (no_record-1)*sizeof (int); fseek(pf, offset_byte, SEEK_SET); nilai = _getw(pf);/* Baca sebuah int dr file */ printf("%d \n",nilai); printf("\nMau mencoba lagi (Y/T)? "); jawab=getche(); } while (jawab == 'y' || jawab == 'Y'); printf("\n"); fclose(pf);/* Tutup file */ }

CONTOH PROGRAM fseek UNTUK CARI STRING #include main() { FILE *pf; char jawab,nama[20]; int i, no_record; long int offset_byte; if((pf = fopen("latihan.txt", "r")) == NULL) { printf("File tidak dapat dibuka !\n"); exit(1); } do { printf("\n Nomor record dr data yg mau ditampilkan : "); scanf("%d", &no_record); offset_byte = (no_record-1); fseek(pf, offset_byte, SEEK_SET); printf ("%s\n",fgets(nama,20,pf)); printf("\nMau mencoba lagi (Y/T)? "); jawab=getche(); } while (jawab == 'y' || jawab == 'Y'); printf("\n"); fclose(pf);/* Tutup file */ }

MENGHAPUS FILE Bentuk deklarasi : namafile : pointer yang menunjuk ke nama file yang akan dihapus  Jika operasi hapus berhasil, akan menghasilkan output = 0.  Prototype : stdio.h int remove (char *namafile);

CONTOH PROGRAM HAPUS #include #define PJG 65 main() { int kode; char namafile[PJG]; printf("Nama file yang akan dihapus : "); gets(namafile); kode = remove(namafile); if(kode == 0) printf("File sudah dihapus\n"); else printf("Gagal dalam menghapus file\n"); }

MENGGANTI NAMA FILE Bentuk deklarasi :  Jika operasi hapus berhasil, akan menghasilkan output = 0.  Prototype : stdio.h int rename(char *namafilelama, char *namafilebaru);

CONTOH PROGRAM GANTI NAMA #include #define PJG 65 main() { int kode; char namafilelama[PJG], namafilebaru[PJG]; printf("Nama file yang akan diganti : "); gets(namafilelama); printf("Nama file yang baru : "); gets(namafilebaru); kode = rename(namafilelama, namafilebaru); if(kode == 0) printf("Nama file sudah diganti\n"); else printf("Gagal dalam mengganti nama\n"); }