Upload
anthony-hardin
View
25
Download
0
Embed Size (px)
DESCRIPTION
basic
Citation preview
Page 65
Pertemuan 7
OPERASI FILE
Objektif:
1. Mahasiswa dapat memahami pengertian file.
2. Mahasiswa dapat mengetahui jenis-jenis file.
3. Mahasiswa dapat mengetahui bentuk umum penulisan statement OPEN.
4. Mahasiswa dapat menyebutkan jenis-jenis operasi yang dapat dilakukan pada
suatu file.
5. Mahasiswa dapat mengetahui cara membaca dan menulis suatu file.
6. Mahasiswa dapat memahami beberapa reserved words yang berhubungan dengan
file ,yaitu : EOF, LOF, CLOSE, APPEND, INPUT, OUTPUT, SEEK, PUT,
GET ,PRINT #, RANDOM, LINE INPUT, KILL, dan FILES.
Page 66
P7.1. Teori
File
File merupakan tempat penyimpanan data-data yang lebih permanen di dalam disk atau tape.
Pengertian lain, file adalah kumpulan dari record-record. Beberapa keuntungan menggunakan
file ,yaitu:
1. Kita bisa melihat isi data dalam file di kemudian hari karena lebih permanen dari pada
penyimpanan dalam memori utama /buffer. Jika komputer dimatikan data dalam buffer
akan hilang, sedangkan dengan file tidak hilang karena sudah disimpan secara fisik dalam
disk.
2. File dapat menampung jumlah data yang sangat besar, seperti data karyawan, data
mahasiswa, dan sebagainya.
3. Data dalam file dapat digunakan secara bersama-sama oleh beberapa program atau
aplikasi.
Ada beberapa jenis file dalam BASIC,yaitu :
1. File Sequential ; file yang diakses secara berurutan.
2. File Random ; file yang bisa diakses sccara random tanpa memprhatikan urutan data.
3. File Binary; file dalam bentuk kode-kode binary.
File yang digunakan biasanya bertipe atau berekstension .dat atau .txt.
Untuk membuat file dengan BASIC bisa digunakan statement OPEN,
bentuk umumnya:
OPEN nama_file [FOR MODE] AS [#nomor_file] [LEN = panjang_record]
Keterangan :
Nama_file ; nama file yang akan dibuat atau dibuka,ditulis berkut direktori filenya. Jika
direktori tidak ditulis berarti file dibuat pada direktori aktif.
MODE ; mode penggunaan file , terdiri dari :
- INPUT ; jika file dibuat/dibuka untuk dibaca isi datanya.
Page 67
- OUTPUT ; jika file dibuat/dibuka untuk menuliskan / merekam data ke dalam file.
Jika nama file yang akan dibuat sudah ada sebelumnya, maka file yang lama akan
dihapus.
- APPEND ; jika file dibuat/dibuka untk ditambah isinya tanpa menghapus file
sebelumnya.
- RANDOM ; digunakan untuk pembuatan file random, menyimpan dalam bentuk
record.
Setelah sebuah file dibuat atau dibuka,kemudian file bisa ditutup. Dengan menggunakan
statement CLOSE.
Bentuk umumnya :
CLOSE [(nomor_file)]
Ada beberapa operasi yang melibatkan file , yaitu:
1. Baca File ; setelah dibuka file dapat dibaca isi datanya dengan statement INPUT #, LINE
INPUT #, atau GET. Bentuk umum masing-masing statement :
INPUT #no_file, variabel_list
LINE INPUT # #no_file, variabel_list
GET #no_file, [no_record] [,variabel_list]
LINE INPUT membaca isi file perbaris. Statement GET biasanya untuk membaca file
random yang berisi record-record.
2. Tulis File ; penulisan file dapat dilakukan dengan statement PRINT #, PUT ,WRITE .
Bentuk umumnya :
PRINT #no_file, variabel_list
PUT #no_file, [no_record] [,variabel_list]
WRITE #no_file, ekspresi
PUT digunakan untuk merekam data ke file random. Sedangkan WRITE untuk merekam
data ke file sequewnsial.
3. Tambah File; untuk kepentingan tertentu isi file bisa ditambah datanya tanpa menghapus
file lama dan menulis dengan yang baru. Untuk bisa menambah isi file mode
pembuakaan file harus ditulis APPEND. Contoh :
OPEN "DATA.DAT" FOR APPEND AS #1
Kemudian untuk menulisnya menggunakan statement yang biasa untuk menulis data,
Page 68
seperti penjelasan no.2.
Contoh program yang membuat dan membaca sebuah file sequensial :
DIM Nama AS STRING *15 , Umur AS INTEGER
DIM Nama2 AS STRING *15 , Umur2 AS INTEGER
Nama = "Budi"
Umur = 21
Nama2 = "Wati"
Umur = 22
' Membuat file
OPEN "C:\QBASIC\data.dat" FOR OUTPUT AS #1
PRINT #1 , Nama
PRINT # 1, Umur
PRINT #1, Nama2, Umur2
CLOSE(1)
'Membaca file
OPEN "C:\QBASIC\data.dat" FOR INPUT AS #1
INPUT #1, nam$
INPUT #1, age%
INPUT #1, temp$
PRINT nam$, age%
PRINT temp$
CLOSE (1)
END
Output program :
Budi
21
Wati 22
Isi file C:\QBASIC\data.dat setelah diisi data:
Budi
21
Wati 22
Page 69
Contoh program yang membuat dan membaca sebuah file random :
TYPE Data_Mhs
Nama AS STRING * 15
Kelas AS STRING * 5
END TYPE
DIM dat(1 TO 2) AS Data_Mhs, temp AS Dat_Mhs
'buat file
OPEN "DATA.DAT" FOR RANDOM AS #1
FOR I%=1 TO 2
INPUT "Nama : "; dat(I).Nama
INPUT "Kelas : "; dat(I).Kelas
PUT #1, I%, dat(I)
NEXT I%
CLOSE(1)
'baca file
OPEN "DATA.DAT" FOR RANDOM AS #1
FOR I%=1 TO 2
GET #1,I%, temp
PRINT "Data-";I%
PRINT temp.Nama, temp.Kelas
NEXT I%
CLOSE(1)
END
Output program:
Nama : Budi
Kelas : 1IA01
Nama : Wati
Kelas : 1IA02
Data-1 Budi 1IA01
Data-2 Wati 1IA02
Page 70
Beberapa reserved words lain yang berhubungan dengan file :
1. SEEK ; statement untuk menset dan mengetahui pointer record pembacaan atau penulisan
pada file. Betnuk umumnya :
SEEK(no_file)
SEEK # no_file, posisi
2. EOF ; fungsi untuk mengetahui apakah pointer record berada di akhir file. Mengmbalikan
nilai benar atau salah.Bentuk umumnya :
EOF(no_file)
3. LOF; fungsi untuk mengetahui panjang sebuah file dalam satuan byte. Bentuk umumnya :
LOF(no_file)
4. KILL; statement untuk menghapus file dari dalam program. Statement ini sama dengan
perintah Delete dalam DOS. Bentuk umumnya :
KILL nama_file
5. FILES ; statement untuk menampilkan file dalam direktori dari dalam program.
Statement ini sama dengan perintah Dir dalam DOS. Bentuk umumnya :
FILES nama_file
Page 71
P7.2. Contoh Kasus
Seorang mahasiswa diminta untuk membuat program tentang Operasi File menggunakan
bahasa pemrograman qbasic. Program yang dibuat akan menghasilkan output seperti pada
gambar di bawah ini :
Langkah-langkah Pengerjaan
1. Klik aplikasi program Qbasic.exe, hingga muncul tampilan seperti pada gambar di
bawah ini:
Page 72
2. Setelah muncul tampilan diatas, maka selanjutnya tekan ESC pada keyboard untuk
mengetikkan program yang akan dibuat. Berikut tampilan untuk mengetikkan
program:
3. Selanjutnya kita ketikkan souce code program berikut pada program qbasic.
DECLARE SUB ISIDATA ()
DECLARE SUB BACADATA ()
CLS
PRINT "CONTOH INPUT DATA"
CALL ISIDATA
CALL BACADATA
END
SUB BACADATA STATIC
OPEN "DATA.DATA" FOR INPUT AS #1
CLS
PRINT "ISI BERKAS DATA.DAT"
Page 73
DO UNTIL EOF(1)
INPUT #1, JK$, NM$, JL$, REK$
PRINT JK$, NM$, JL$, REK$
LOOP
CLOSE #1
END SUB
SUB ISIDATA STATIC
OPEN "DATA.DATA" FOR OUTPUT AS #1
INPUT "JUDUL KASET : ", JK$
INPUT "NAMA MUSISI : ", NM$
INPUT "JENIS LAGU : ", JL$
INPUT "DIREKAM OLEH :", REK$
WRITE #1, JK$, NM$, JL$, REK$
CLOSE #1
END SUB
4. Program diatas merupakan program inti/utama, selanjutnya untuk SUB ISIDATA dan
SUB BACADATA merupakan bagian dari program utama ini. Pada saat mengetikkan
source SUB ISIDATA dan SUB BACADATA, maka akan masuk pada layar baru
secara otomatis. Berikut tampilannya:
Page 74
5. Setelah selesai mengetikkan source code program diatas, maka terlebih dahulu
merubah halaman yang aktif ke halaman utama yang telah dibuat dengan cara tekan
F2 pada keyboard, kemudian memilih ke halaman utama yang yang telah dibuat yaitu
halaman Untitled. Berikut tampilannya:
6. Setelah memilih Untitled, kemudian klik Edit in Active . maka akan tampil pada
halaman utama program. Berikut tampilannya.
Page 75
7. Sebelum menjalankan program diatas, alangkah lebih baiknya menyimpan program
tersebut dengan cara klik File pada toolbar pilih Save pilih direktori yang akan
dipilihketikkan nama file nya klik OK
8. Setelah selesai menyimpan file tersebut, maka selanjutnya kita menjalankan program
tersebut dengan cara menekan SHIFT+F5 , jika program yang telah ddiketikkan
telah berhasil, maka program ini akan berjalan, tetapi pada saat program itu dijalankan
program itu tidak berjalan, maka program tersebut mengalami kesalahan sintaks.
Page 76
P7.3. Latihan Soal
Pertanyaan:
Lengkpai bagian A dan B:
A. OPEN dan CLOSE#2 * B. OPEN dan CLOSE#1 C. OPEN#2 dan CLOSE#2 D. OPEN#1 dan CLOSE#2 E. Tidak ada yang tepat
Page 77
P7.4. Daftar Pustaka
[1] Jogiyanto H.M, Teori dan Aplikasi Program Komputer Bahasa Basic (edisi ke-5),
Andi Offset, 1992.
[2] F. Soesianto B.Sc.E, Ir., Eko Nugroho, Ir., P. Insap Santosa, Ir., Pemrograman
Basic(edisi ke-2), Andi Offset, Yogyakarta, 1992.
[3] Abdul Kadir, Pemrograman QBASIC. Panduan Untuk Belajar Sendiri Bahasa
BASIC(edisi pertama), Andi Offset, 1995.
[4] P. Insap Santosa, Quick Basic, Andi Offset, 1990.