Anda di halaman 1dari 13

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 65
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 66
- 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 67
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 68
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
PRINT
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 69
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 70
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 71
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 72
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$
PRINT
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 73
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 74
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 75
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 76
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.

Page 77

Anda mungkin juga menyukai