• Tidak ada hasil yang ditemukan

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

N/A
N/A
Protected

Academic year: 2021

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

Copied!
16
0
0

Teks penuh

(1)

Sequential File

Pertemuan 14-15

Overview

Deskripsi

Tujuan Instruksional

Referensi

Konsep Record/Struktur dan Pointer

Konsep File

Pengelolaan File

Studi Kasus

(2)

Jurusan Teknik Informatika XIV/XV - 3 Universitas Widyatama

Deskripsi

Pada materi ini, akan dipelajari tentang

Konsep Record/Struktur dan Pointer

Definisi

&

Manfaat

File

terutama

Sequential File

Pengelolaan

Sequential

File

menggunakan Bahasa C/C++

Input

Data dalam File

Baca Data dalam File

Jurusan Teknik Informatika XIV/XV - 4 Universitas Widyatama

Tujuan Instruksional

Mahasiswa diharapkan dapat :

Menjelaskan

pengertian

dan

manfaat

Record/Struktur

&

Pointer,

serta

cara

penulisannya dalam program

Menjelaskan pengertian dan manfaat File,

serta cara penulisannya dalam program

Menjelaskan

pengelolaan

Sequential

File

(Input data dan baca data)

Menjelaskan penggunaan Sequential File

(Input data dan baca data) dalam C/C++

Menggunakan Sequential File (Input data dan

baca data) dalam C/C++

(3)

Jurusan Teknik Informatika XIV/XV - 5 Universitas Widyatama

Referensi

1.

Hartono,

Jogiyanto,

“Konsep

Dasar

Pemorgraman Bahasa C”. Andi, Yogyakarta,

2000

2.

Hartanto,

Budi,

“Memahami

Logika

Pembuatan Program C Secara Mudah”, Andi,

Yogyakarta, 2004

3.

Yatini

B.,

Indra;

Nasution,

Erliansyah,

“Algoritma & Struktur Data dengan C++”,

Graha Ilmu,Yogyakarta, 2005

4.

Deitel,

“C

How

To

Program

4

th

Edition

”,Pearson-Prentice Hill, 2004

5.

Solichin, Achmad, “Pemrograman Bahasa C

dengan Turbo C”, IlmuKomputer.com,2003

Konsep Record / Struktur

Konsep Pointer

(4)

Jurusan Teknik Informatika XIV/XV - 7 Universitas Widyatama

Definisi Record/Struktur

Collections of related variables under one

name. Structures may contain variables of

many diferent data types. Structures are

commonly used to defines records to be stored

in files

[4]

Pengelompokan dari variable-variable (yang

memungkinkan untuk memiliki tipe data yang

berbeda) yang bernaung dalam satu nama.

Variable-variable yang membentuk

suatu

struktur selanjutnya disebut sebagai elemen

atau anggota struktur

[1]

Pengelompokan sekumpulan data dengan tipe

yang sama dan/atau berbeda yang saling

terkait dalam satu blok data

[2]

Jurusan Teknik Informatika XIV/XV - 8 Universitas Widyatama

Deklarasi Record/Struktur

struct

{

tipe_data1 nama_variabel-1;

tipe_data2 nama_variabel-2;

…dst

} nama_tipe_data_struktur;

Ex : struct { char Kode_Barang[7]; char Nama_Barang[25]; int Jumlah_Barang; float Harga_Satuan; } Data_Barang; Harga_Satuan Jumlah_Barang Data_Barang Nama_Barang[25] Kode_Barang[7]

(5)

Jurusan Teknik Informatika XIV/XV - 9 Universitas Widyatama

Mengakses Record/Struktur

Dikarenakan struktur terdiri dari lebih dari

satu variabel dengan tipe data yang berbeda,

hal ini mengakibatkan terdapat penanganan

khusus

untuk

mengakses

variabel

dalam

struktur, yaitu :

nama_tipe_data_struktur.nama_variabel-x

Ex :

Data_Barang.Kode_Barang[7]

scanf(“%s”, &Data_Barang.Kode_Barang[7]);

printf(“Kode Barang : %s”, Data_Barang.Kode_Barang[7]);

Definisi Pointer

Variables whose values are memory

addresses/contains an address of a

variable that contaon a specific value

[4]

Suatu Variabel yang berisi alamat lokasi

suatu memori untuk data tertentu

[1]

(6)

Jurusan Teknik Informatika XIV/XV - 11 Universitas Widyatama

Deklarasi Pointer

tipe_data *nama_variabel_Pointer;

Ex : float *Ptr_Nilai; float Nilai = 12.12; PtrNilai Nilai

Lihat file : Pointer.C

12.12

(7)

Jurusan Teknik Informatika XIV/XV - 13 Universitas Widyatama

Definisi File

Storage of data (all such data not lost

when a programs terminates)

[4]

Data yang disimpan

pada

external

memory dan bersifat permanen

[1]

Tempat penyimpanan data dalam disk

[2]

Jenis File :

1.Berdasarkan Jenis Data yang disimpan

[2]

File Teks : semua data yang disimpan dalam file

akan diubah menjadi teks

File Biner : semua data yang disimpan dalam file

akan disimpan berdasarkan nilai binernya

Perbedaan

Hanya oleh programmer yang mengetahui tipe dari data yang disimpan

Semua program pengolah kata Pengaksesan 3 Lebih Cepat Lebih lambat Kecepatan Akses 2 Bilangan Biner Teks Jenis Penyimpanan 1 File Biner File Teks Kategori No

(8)

Jurusan Teknik Informatika XIV/XV - 15 Universitas Widyatama

Jenis File :

2.Berdasarkan Operasi Input/Output

[1]

File berpenyangga (buffered files) atau file arus

(stream file) atau file standar (standards file) :

menggunakan penyangga (buffer) untuk menampung

sementara data yang akan dipindahkan dari memori

internal komputer ke dan/atau dari file. Menyediakan

fasilitas untuk melakukan format data yang akan

dibaca dan/atau dimasukan pada file, sehingga lebih

cocok digunakan untuk operasi input/output pada file

teks.

File tidak berpenyangga (unbuffered files) : tidak

menggunakan penyangga (buffer), sehingga data

langsung dibaca dari dalam file dan/atau dimasukan

ke dalam file. Tidak menyediakan format data khusus ,

sehingga

lebih

cocok

digunakan

untuk

operasi

input/output pada file biner.

Jurusan Teknik Informatika XIV/XV - 16 Universitas Widyatama

Jenis File :

3.Berdasarkan Cara Pengaksesan

[4]

File Sekuensial (Sequential File) : Data dalam

file diakses

secara

sekuensial/berurutan

mulai dari urutan pertama sampai dengan

akhir file.

File Random (Random File) : Data dalam file

diakses

secara

random/acak

tergantung

kebutuhan.

(9)

Pengelolaan File

Mengaktifkan atau Membuka File (1)

Header File : stdio.h Sintaks :

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+ (penjelasan masing-masing fungsi mode file lihat slide 24-25) ex : FILE *File_Coba

(10)

Jurusan Teknik Informatika XIV/XV - 19 Universitas Widyatama

Mengaktifkan atau Membuka File (2)

Header File : fstream.h

Sintaks :

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 XIV/XV - 20 Universitas Widyatama

Memproses file (1)

Header File : stdio.h

Menyimpan MenyimpanMenyimpan

Menyimpan data data data kedata kekeke dalamdalamdalamdalam filefilefilefile

Perintah yang digunakan : fputc(), fgetc(), putw(), getw(), fputs(), fgets(), fscanf(), fprintf(), fwrite(), fread()

ex : fprintf(File_Coba, “%d %s %5.2f”,Nomor, Nama, Nilai); fscanf(stdin, “%d %s %f”,&Nomor, &Nama, &Nilai);

Membaca MembacaMembaca Membaca datadatadatadata

Perintah yang digunakan : rewind(), fseek(), ftell(), fread(), fscanf()

ex : fread(File_Coba, “%d %s %5.2f”,Nomor, Nama, Nilai); fscanf(File_Coba, “%d %s %5.2f”,Nomor, Nama, Nilai);

(11)

Jurusan Teknik Informatika XIV/XV - 21 Universitas Widyatama

Memproses file (2)

Header File : fstream.h

Menyimpan MenyimpanMenyimpan

Menyimpan data data data data kekeke dalamkedalamdalam filedalamfilefilefile

Sintaks :

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 perintah put(), <<,write() di atas !!!

Memproses file (3)

Header File : fstream.h

Membaca MembacaMembaca Membaca datadatadatadata

Sintaks :

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));

(12)

Jurusan Teknik Informatika XIV/XV - 23 Universitas Widyatama

Menutup File

Header File : stdio.h Sintaks :

fclose(Pointer_File); {Menutup sebuah file yang aktif} atau fcloseall(Pointer_File); {Menutup semua file yang aktif} ex : fcose(File_Coba);

fcloseall();

Header File : fstream.h Sintaks :

offstream Pointer_File; (Buffer untuk file) Pointer_File.close()

Jurusan Teknik Informatika XIV/XV - 24 Universitas Widyatama

Konsep Pengelolaan File (3)

Modus Open file

[4]

Open a file for reading in binary mode rb

Append; open or create a file for update; writing is done at the end of the file

a+

Create a file for update. If the file already exist, discard the current contents

w+

Open a file for update (reading and writing) r+

Append; open or create a file for writing at the end of the file

a

Create a file for writing. If the file already exist, discard the current contents

w

Open a file for reading r

Description Mode

(13)

Jurusan Teknik Informatika XIV/XV - 25 Universitas Widyatama

Konsep Pengelolaan File (4)

Modus Open file

[4]

Append; open or create a file for update in binary mode; writing is done at the end of the file

ab+

Create a file for update in binary mode. If the file already exist, discard the current contents

wb+

Open a file for update (reading and writing) in binary mode

rb+

Append; open or create a file for writing at the end of the file in binary mode

ab

Create a file for writing in binary mode. If the file already exists, discard the current contents

wb

Description Mode

Konsep Pengelolaan File (5)

Operasi file Berpenyangga

[1]

Meletakan sebuah nilai integer ke buffer untuk direkam ke file

putw()

Membaca sebuah nilai karakter dari file untuk diletakan di buffer

fgetc()

Meletakan sebuah nilai karakter ke buffer untuk direkam ke file

fputc()

Meletakan sebuah nilai string ke buffer untuk direkam ke file

fputs()

Membaca sebuah nilai integer dari file untuk diletakan di buffer

getw()

Kegunaan Operasi

(14)

Jurusan Teknik Informatika XIV/XV - 27 Universitas Widyatama

Konsep Pengelolaan File (6)

Operasi file Berpenyangga

[1]

Membaca sebuah blok data dari file untuk diletakan di buffer

fread()

Meletakan sebuah blok data ke buffer untuk direkam ke file

fwrite()

Membaca sekumpulan data terformat dari file untuk diletakan di buffer

fscanf()

Meletakan sekumpulan data terformat ke buffer untuk direkam ke file

fprintf()

Membaca sebuah nilai string dari file untuk diletakan di buffer

fgets()

Kegunaan Operasi

Jurusan Teknik Informatika XIV/XV - 28 Universitas Widyatama

Konsep Pengelolaan File (7)

Operasi file Berpenyangga

[1]

Menyimpan data di buffer ke file fflush()

Mendapatkan posisi pembacaan atau perekaman di file pada saat tertentu.

fgetpos()

1. SEEK_SET/0 : Pembacaan data mulai dari awal file 2. SEEK_CUR/1 : Pembacaan data mulai dari posisi saat ini

pada file

3. SEEK_END/2 : Pembacaan data mulai dari akhir file

Menempatkan pembacaan atau perekaman suatu data ke posisi tertentu di file. Terdiri dari 3 buah konstanta pencarian :

fseek()

Mendapatkan posisi pembacaan atau perekaman di suatu posisi tertentu di file.

ftell()

Kegunaan Operasi

(15)

Jurusan Teknik Informatika XIV/XV - 29 Universitas Widyatama

Konsep Pengelolaan File (8)

Operasi file Berpenyangga

[1]

Menghapus semua status kesalahan di flags clearerr()

Menutup suatu file dan membuka file yang lain dengan menggunakan pointer yang sama

freopen()

Menampilkan kesalahan yang terjadi perror()

Mengembalikan posisi pembacaan atau perekaman di file pada saat tertentu (mirip dengan operasi fseek())

fsetpos()

Mendeteksi kesalahan yang terjadi ferror()

Kegunaan Operasi

Konsep Pengelolaan File (9)

Operasi File Tidak Berpenyangga

[1]

Membaca data dari file read()

Membuka file yang ada atau membuat file baru open()

Menyimpan data ke file write()

Menempatkan pembacaan/menutup file rekaman ke posisi byte tertentu

lseek()

Menutup file close()

Membuat file baru creat()

Kegunaan Operasi

(16)

Jurusan Teknik Informatika XIV/XV - 31 Universitas Widyatama

Konsep Pengelolaan File (10)

Operasi File

[1]

Mendapatkan nomor pengenal file fileno()

Menghapus file unlink()

Mendapatkan ukuran file filelength()

Mengganti nama file rename()

Mengoperasikan file yang dibuat dengan operasi tidak berpenyangga, dengan menggunakan operasi file berpenyangga

fdopen()

Mengecek keberadaan suatu file access()

Kegunaan Operasi

Referensi

Dokumen terkait

SILABUS SDN JOHO 5 dan SDN JOHO 3 PACE NGANJUK NAMA SEKOLAH MATA PELAJARAN :IPS :v / 1 KELAS I SEMESTER STANDARKOMPETENSI : Menghargai berbagai peninggalan dan tokoh sejarah

Penelitian yang dilakukan oleh Nizwardi Azkha dalam Jurnal yang berjudul Studi Efektivitas Penerapan Kebijakan Perda Kota Tentang Kawasan Tanpa Rokok (KTR) Dalam Upaya

Mengacu pada pertanyaan penelitian, tujuan dari penelitian ini untuk mengetahui perbedaan kemampuan pembelajar dalam pembelajaran membaca pemahaman teks bahasa Jepang

[r]

Sebuah perusahaan dapat dikerjakan oleh seseorang pengusaha atau beberapa orang pengusaha dalam bentuk kerjasama. Dalam menjalankan perusahaannya seorang pengusaha dapat bekerja

Sedangkan variabel dependen yaitu keputusan pembelian (Y). Metode penelitian yang digunakan adalah metode deskriptif kausal dengan jumlah sampel 75 orang. Bentuk

Contoh perintah untuk analisis E2D dari trace file skenario grid 7 dengan protokol OLSR dan jumlah node 25 seperti Gambar 4-32 dan hasilnya dapat dilihat pada Gambar 4-33. Gambar

Ruma Maida (dirilis secara internasional dengan judul Maida's House) adalah film drama Indonesia yang ditulis oleh Ayu Utami, disutradarai Teddy Soeriaatmadja, dan dibintangi