PERTEMUAN XI OPERASI FILE

dokumen-dokumen yang mirip
OPERASI FILE DASAR PEMROGRAMAN

1. Menciptakan dan mengisi file dengan data karakter dari keyboard /* File program: fputc.c */ #include <stdio.h> #include <stdlib.

Praktikum 12 FILE. Gambar Struktur data dari file

DIKTAT MATA KULIAH PEMROGRAMAN I BAB XII FILE

Algoritma dan Pemrograman Lanjut. Pertemuan Ke-13 Arsip (File) 2

DIKTAT MATA KULIAH PEMROGRAMAN I BAB XII FILE

Teknik Pemrograman Terstruktur 1

MODUL 7 FILE. namafile adalah nama dari file yang akan dibuka/diaktifkan. mode adalah jenis operasi file yang akan dilakukan terhadap file.

Achmad Solichin.

PERTEMUAN XI OPERASI FILE

Pemrograman Terstruktur. Pemrosesan File Teks dan File Biner

PERTEMUAN VII FILE TEKS & FILE BINER

BAB XII OPERASI FILE

Bab 7 File 109 BAB 7 FILE TUJUAN PRAKTIKUM TEORI PENUNJANG. FILE *fopen( const char*nama_file, const char*mode);

Baca Tulis File. Untuk dapat membaca atau menulis data dari/ke sebuah file maka langkah yang perlu dilakukan adalah:

BAB 12 MANIPULATION FILE

LATIHAN DAN KISI-KISI SOAL JURUSAN TELEKOMUNIKASI POLITEKNIK ELEKTRONIKA NEGERI SURABAYA

FILE INPUT/OUTPUT. Overview

12/29/2011. Algoritme dan Pemrograman. Bit. Bitwise operator

Modul V Pemrograman Bahasa C ( bagian II )

BAB III PERINTAH INPUT OUTPUT

Algoritma Pemrograman. Fery Updi,M.Kom

Hari : Rabu Pertemuan : 3 Tanggal Praktikum : Oktober 2001 Shift : 4

KONSEP STRING. Nilai string selalu diakhiri dengan tanda NULL (\0)

Konsep Pemrograman. Bab 14. Struktur 1. Konsep Pemrograman Politeknik Elektronika Negeri Surabaya 2006 PENS-ITS. Umi Sa adah

Algoritme dan Pemrograman

Pertemuan 11: OPERASI FILE dalam C

Minggu ke-13 Berkas (File)

Tipe Data dan Operator

STRING DASAR PEMROGRAMAN

Sequential File. Pertemuan Konsep Record/Struktur dan Pointer Konsep File Pengelolaan File Studi Kasus

BAB IV PENGULANGAN PROSES

Proses Perulangan (Looping) DASAR PROGRAMMING 1

Membuka dan Menutup File

ALGORITMA DAN PEMROGRAMAN 2. 3 SKS By : Sri Rezeki Candra Nursari

Tujuan : date day month year

Praktikum 4 PENGULANGAN PROSES

Hari : Rabu Pertemuan : 4 Tanggal Praktikum : 28 November 2001 Shift : 4

Praktikum 5 PERULANGAN PROSES

PRAKTIKUM 5 PENGULANGAN PROSES 1

BAB V, VI ARRAY, STRING

Tipe Data Dasar. Data bisa dinyatakan dalam bentuk konstanta atau variabel.

PRAKTIKUM 6 PENGULANGAN PROSES 2

Dasar Operasi File. Overview. Tujuan Instruksional

1. Konstanta String Kostanta ABCDE disimpan dalam memory secara berurutan, dengan komposisi sebagai berikut : Memory rendah.

Praktikum 3 DASAR-DASAR PEMROGRAMAN C

Praktikum 1. Suatu array berdimensi satu dideklarasikan dalam bentuk umum berupa : tipe_data nama_var[ukuran];

Bab 2. Dasar-Dasar Pemrograman C

TUGAS PENDAHULUAN MODUL I PERKENALAN MIKU, COMPILER BAHASA C, DAN STANDARD INPUT-OUTPUT

Dasar-dasar Pemrograman C DASAR PEMROGRAMAN & ALGORITMA

A R R A Y. Bentuk umum deklarasi array : type nama_array[ukuran] tipe : menyatakan tipe dasar array ukuran : menyatakan banyaknya elemen pada array

Tipe Data, Variabel, Input/Output

Bahasa C-M6 By Jamilah, Skom 1

Latihan & Kisi-kisi UTS DASAR PEMROGRAMAN

VIII MANIPULASI STRING

PENGENALAN BAHASA C. A. Struktur Kode Program dalam Bahasa C Secara garis besar, suatu kode program dalam bahasa C memiliki struktur umum seperti ini:

Data bisa dinyatakan dalam bentuk konstanta atau variabel.

Pada prinsipnya operasi yang dilakukan pada file terdiri dari 3 tahapan : 1. Membuka file 2. Melakukan pemrosesan pada file 3.

A. TUJUAN PEMBELAJARAN

Konsep Pemrograman. Bab 10. String. Konsep Pemrograman Politeknik Elektronika Negeri Surabaya 2006 PENS-ITS. Umi Sa adah

Praktikum 4. Tumpukan (Stack)

UNIVERSITAS WIDYATAMA JURUSAN TEKNIK INFORMATIKA - FAKULTAS TEKNIK Jl. Cikutra No.204 A BAndung UJIAN TENGAH SEMESTER TA.

Pada akhir pertemuan ini, diharapkan mahasiswa akan mampu :

BAB VIII POINTER. Tujuan :

Struct Lanjutan: Studi Kasus

Chapter 1 KONSEP DASAR C

Algoritma dan Struktur Data. Ramos Somya, S.Kom., M.Cs.

Seluruh elemen di dalam struktur array mempunyai tipe data yang sama. Random Access

DIKTAT MATA KULIAH PEMROGRAMAN I BAB XI POINTER

BAB VII STRING Konstanta String Suatu konstanta string ditulis dengan diawali dan diakhiri tanda petik ganda, misalnya:

Suatu konstanta string ditulis dengan diawali dan diakhiri tanda petik ganda, misalnya:

FUNGSI INPUT & OUTPUT

Pertemuan 06. Dasar Pemrograman Komputer [TKL-4002] 2010

Achmad Solichin.

PENGENALAN C++ Bab 1

Praktikum 29 Struct1 2016

Algoritma Pemrograman 2B (Pemrograman C++)

Tipe Data. Adri Priadana

Algoritma dan Struktur Data. Ramos Somya

ALGORITMA (2) Mengupas Kentang

OPERATORS. dan int. Berarti, tipe double dioperasikan dengan tipe int akan menghasilkan tipe double.

Pemrograman Dasar C. Minggu 6

Pengenalan Struktur Data. Farah Zakiyah Rahmanti 2014

PERTEMUAN VIII STRUKTUR LANJUT

SATUAN ACARA PERKULIAHAN (SAP)

Tipe Data Dasar. Berdasarkan jenisnya, data dapat dibagi menjadi lima kelompok dinamakan tipe data dasar, yaitu:

Pernyataan (Statement) dan Input/Output

DPK UNIVERSITAS BRAWIJAYA MALANG

INPUT DAN OUTPUT BAHASA C

PENGAKSESAN BERKAS (FILE) DALAM C

PERULANGAN PROSES. Proses perulangan ditandai dengan mekanisme yang disebut loop. Proses Loop : Proses yang berulang-ulang

A. TUJUAN 1. Menjelaskan tentang konsep dari variabel pointer. zzzz. Address. Gambar 8.1 Variabel pointer px menunjuk ke variabel x

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA

MAKALAH POINTER PADA BAHASA C

Algoritma dan Pemrograman

Struktur Program Bahasa C

PRAKTIKUM 10 STRING A B C D E \0. Gambar 11.1 Komposisi penyimpanan string dalam memori

OPERATOR BAHASA C. Obyektif : 4. Mengetahui macam-macam operator dalam Bahasa C. 5. Mengetahui dan dapat menggunakan format pada tiap tipe data..

Perulangan, Percabangan, dan Studi Kasus

Algoritme dan Pemrograman

Transkripsi:

PERTEMUAN XI OPERASI FILE

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 : int _putw(int nilai, FILE *ptr_file); int _getw(file *ptr_file); Kegunaan : _getw() untuk membaca sebuah data bertipe int dari file _putw() untuk menyimpan sebuah data bertipe int ke file.

CONTOH PROGRAM TULIS main( ) FILE *pf; /* ptr-ke-file */ Masukkan banyaknya data : 3 Bilangan yang disimpan : 70 Bilangan yang disimpan : 80 Bilangan yang disimpan : 90 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 */

CONTOH PROGRAM BACA 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"); feof : untuk mendeteksi akhir file Isi file BILANGAN.DAT : 1. 70 2. 80 3. 90 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 */

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 : int fread(void *buffer, int n, FILE *ptr_file); int fwrite(void *buffer, int jum_byte, int n, FILE *ptr_file); 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().

CONTOH PROGRAM TULIS 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 main() Menyatakan data sebanyak 1 x ukuran variabel struct buku FILE *f_struktur; int i=1; struct char judul[20]; Ukuran char-nya harus sama char pengarang[20]; dengan yang di program tulis 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 */

OPERASI BACA & SIMPAN DATA STRING PADA FILE Perintah yang digunakan : fgets() dan fputs(). Bentuk deklarasi : int fputs(char *str, FILE *ptr_file); char fgets(char *str, int n, FILE *ptr_file); 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. 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 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 */

CONTOH PROGRAM TULIS - 2 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 BACA 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)) Hanya printf ("%s\n",nama); mencetak 6 karakter per baris fclose(pf); /* menutup file */

AKSES FILE BINER SCR ACAK Tujuan : membaca data di tengah file scr cepat. Perintah yang digunakan : fseek (). Bentuk deklarasi : int fseek(file *ptr_file, long int offset, int posisi); 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 Prototype : stdio.h

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

CONTOH PROGRAM fseek UNTUK CARI KARAKTER #include <string.h> 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 <string.h> 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 <string.h> 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 : int remove (char *namafile); namafile : pointer yang menunjuk ke nama file yang akan dihapus Jika operasi hapus berhasil, akan menghasilkan output = 0. Prototype : stdio.h

CONTOH PROGRAM HAPUS #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 : int rename(char *namafilelama, char *namafilebaru); Jika operasi hapus berhasil, akan menghasilkan output = 0. Prototype : stdio.h

CONTOH PROGRAM GANTI NAMA #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");