• Tidak ada hasil yang ditemukan

Sesi/Perkuliahan ke: 11

N/A
N/A
Protected

Academic year: 2021

Membagikan "Sesi/Perkuliahan ke: 11"

Copied!
33
0
0

Teks penuh

(1)

Sesi/Perkuliahan ke: 11

Tujuan Instruksional Khusus :

1. Memahami Konsep File Random

2. Mengetahui pembuatan file Random dengan bahasa Basic 3. Mengetahui Operasi file Random dengan bahasa Basic

Pokok Bahasan : BERKAS DATA MASUP ACAK (RANDOM ACCESS FILE)

Deskripsi singkat : Dalam pertemuan ini akan mempelajari tentang konsep file random, pembuatan file random dan operasi file random

Reference :

1. Insap Santoso, Ir.,MSc, Program-program Terapan Menggunakan Quick Basic, Andi Yogyakarta.

2. Jogiyanto H.M, Teori dan Aplikasi Program Komputer Bahasa Basic, Andi Yogyakarta.

3. Rijanto Tosin, Quick Basic, Dinastindo.

(2)

Berkas Data Masup Acak (Random Access File)

Pada berkas data (file) masup acak, akses terhadap record data dapat dilakukan secara acak (random), tanpa harus membaca record satu per satu mulai dari posisi awal record. Keuntungannya adalah kecepatan proses lebih tinggi dibandingkan berkas data masup urut.

Berikut adalah prosedur penyimpanan data ke dalam berkas data masup acak : 1. Buka file

2. Siapkan buffer data

3. Untuk data numeric harus dikonversi ke alfabetik/string 4. Simpan data ke dalam buffer

5. Lakukan penulisan ke dalam file

Membuka File

Perintah yang diperlukan adalah : OPEN

Bentuk Umum :

atau

Dimana:

nomfile : bilangan bulat antara 1 sampai 255. Digunakan untuk menyatakan nomor file yang akan dibuka

namafile : ekspresi string untuk menunjukkan nama file OPEN “R”, #nomfile, namafile, reclen

OPEN namafile FOR RANDOM ACCESS akses AS #nomfile LEN = reclen

(3)

reclen : bilangan bulat antara 1 sampai 32.676. Digunakan untuk menyatakan jumlah byte setiap record. Parameter ini bersifat pilihan, jika tidak dipakai, maka jumlah byte per record dianggap 512 byte.

akses : Parameter yang menyatakan bentuk operasinya, berupa : READ : menyebabkan file untuk pembacaan saja.

WRITE : menyebabkan file untuk penulisan saja.

READWRITE : menyebabkan file untuk pembacaan dan penulisan.

Parameter ini bersifat pilihan. Jika tidak ditulis, maka diasumsikan file random digunakan untuk membaca dan menulis.

Contoh-contoh :

OPEN “R”, #1, “B:DataNama”

OPEN “R”, #2, “DataMhs”, 250

OPEN “DataMhs” FOR RANDOM AS #2 LEN 250

OPEN “B:DataMhs” FOR RANDOM ACCESS READ AS #2 LEN 50

Penyediaan Buffer Data

Dalam file random, perlu disiapkan suatu area penampungan sementara untuk data yang akan diakses dari file tersebut, yang disebut dengan “RANDOM BUFFER”.

Untuk membentuknya digunakan statement FIELD.

Bentuk Umum :

Dimana:

nomfile : bilangan sesuai dengan nomor file yang dibuka dengan statement OPEN

lebarfield,

lebarfield1 : bilangan yang menyatakan panjang variabel (data) yang akan disimpan

FIELD #nomfile, lebarfield AS varstring [, lebarfield1 AS varstring 2, …]

(4)

varstring,

varstring1 : nama variabel string yang akan digunakan untuk data yang akan diakses.

Berikut ini penjelasan mengenai lebar field yang dibutuhkan untuk setiap tipe data.

Tabel 1 – Ketentuan Lebar Field

Tipe data Lebar Field

Alpanumerik 1 byte untuk 1 karakter Numerik Integer 2 byte

Numerik Single Precission 4 byte

Long Integer 4 byte

Numerik Double Precission 8 byte

Catatan:

Data yang disimpan ke dalam file harus dalam bentuk string.

Contoh :

Data Mahasiswa akan disimpan ke dalam file random, dengan item-item sebagai berikut :

Item Tipe Jumlah karakter NPM Alpanumerik 8 karakter

NAMA Alpanumerik 20 karakter ALAMAT Alpanumerik 25 karakter NILAI Numerik 1 digit

Total jumlah byte yang diperlukan berdasarkan tabel 1 di atas adalah 55 byte meliputi, 8 byte untuk NPM, 20 byte untuk NAMA, 25 byte untuk ALAMAT dan 2 byte untuk NILAI.

(5)

Penyediaan buffer yang diperlukan adalah :

OPEN “R”, #1, “DataMHS”, 55

FIELD #1, 8 AS NPM$, 20 AS NAMA$, 25 AS ALAMAT$, 2 AS NILAI

Konversi Data

Berikut ini adalah tabel fungsi konversi data.

Konversi Numerik ke Karakter

Nama Fungsi Bentuk Umum

MKI$ Konversi numerik integer MKI$(ekspresi integer) MKL$ Konversi numerik Long integer MKL$(ekspresi long integer) MKS$ Konversi numerik single precission MKS$(ekspresi single prec.) MKD$ Konversi numerik Double precission MKL$(ekspresi double prec.)

Konversi Karakter ke Numerik

Nama Fungsi Bentuk Umum

CVI Konversi karakter 2 byte ke integer CVI(2-byte string) CVL Konversi karakter 4 byte ke long integer CVL(4-byte string) CVS Konversi karakter 4 byte ke single precission. CVS(4-byte string) CVD Konversi karakter 8 byte ke double precission. CVD(8-byte string)

Penyimpanan Data ke Buffer

Ada dua bentuk perintah untuk meletakkan data ke dalam buffer : LSET : meletakkan data ke dalam buffer dengan posisi merapat ke kiri RSET : meletakkan data ke dalam buffer dengan posisi merapat ke kanan

(6)

Bentuk Umum :

dimana,

varstring : nama variabel yang telah didefinisikan dengan FIELD

ekspstring : variabel string atau ekspresi string yang akan ditempatkan dalam buffer

Contoh :

OPEN “R”, #1, “DataMHS”, 55

FIELD #1, 8 AS NPM$, 10 AS Nama$

LSET Nama$ = “Andi”

RSET NPM$ = “5523”

Hasil dalam buffer:

A N D I

5 5 2 3

Penulisan Data ke Dalam File

Untuk menuliskan data ke dalam file digunakan statement PUT.

Bentuk Umum :

dimana,

LSET varstring = ekspstring

RSET varstring = ekspstring

PUT #nomFile [, nomRec]

(7)

nomFile : nomor file yang akan digunakan untuk menyimpan data

nomRec : bilangan bulat antara 1 sampai 2.147.483.647 yang menyatakan nomor record tempat data disimpan

Contoh :

Menyimpan data pada posisi record ke-2

PUT #1, 2

Contoh Aplikasi 1

Pembuatan file random untuk menyimpan data mengenai nama, alamat, dan nomor telepon. Nama filed yang akan dibuata adalah TELEPON.DTA. Isi record file adalah :

Item Jenis Jumlah karakter

Nama Alpanumerik 20 karakter Alamat Alpanumerik 30 karakter Telepon Numerik 7 digit

‘====================================================

‘Program : RANDOM1.BAS

‘Keterangan : Contoh penulisan data ke file random

‘====================================================

OPEN “R”, #1, “C:\DATA\TELEPON.DTA”, 57

FIELD #1, 20 AS Nama$, 30 AS Alamat$, 7 AS Telepon$

Nm$ = “ “ NoRec = 1

WHILE Nm$ <> ““

CLS

(8)

LOCATE 5, 10: PRINT “Nama : “ LOCATE 6, 10: PRINT “Alamat : “ LOCATE 7, 10: PRINT “Telepon : “ LOCATE 5, 19: LINE INPUT Nm$

IF Nms = “” THEN END

LOCATE 6, 19: LINE INPUT Alm$

LOCATE 7, 19: LINE INPUT Tlp$

LSET Nama$ = Nm$

LSET Alamat$ = Alm$

LSET Telepon$ = Tlp$

PUT #1, NoRec NoRec = NoRec + 1 WEND

CLOSE END

Penggunaan Statement TYPE .. END TYPE

Statement TYPE .. END TYPE digunakan untuk mendefinisikan suatu variabel record. Dengan menggunakan variabel record, data dapat disimpan ke dalam file random tanpa memerlukan proses konversi data.

Untuk membentuk variabel record dari contoh aplikasi di atas, maka pendefinisian yang harus dilakukan adalah :

TYPE JenisData

Nama AS STRING * 20 Alamat AS STRING * 30 Telepon AS LONG

END TYPE

(9)

Pernyataan yang tertulis di dalam blok statement TYPE .. END TYPE merupakan definisi untuk tiap-tiap variabel dan hanya menentukan jenis dan ukuran variabel.

Untuk membentuk variabel record yang akan digunakan untuk menampung data digunakan statement DIM.

DIM ContohRec AS JenisData

Dengan menggunakan statement TYPE .. END TYPE, maka bentuk umum statement PUT adalah :

Dimana,

varRecord : variabel record yang telah didefinisikan dengan statement DIM

Contoh Aplikasi 2

Pembuatan program yang identik dengan Contoh Aplikasi 1 dengan menggunakan statement TYPE .. END TYPE

‘====================================================

‘Program : RANDOM2.BAS

‘Keterangan : Contoh penulisan data ke file random

‘====================================================

OPEN “R”, #1, “C:\DATA\TELEPON.DTA”, 57

TYPE Data1

Nama AS STRING * 20 Alamat AS STRING * 30 Telepon AS LONG

END TYPE

PUT #nomFile [, nomRec], varRecord

(10)

DIM DataNama AS Data1

Nm$ = “ “ NoRec = 1

WHILE Nm$ <> ““

CLS

LOCATE 5, 10: PRINT “Nama : “ LOCATE 6, 10: PRINT “Alamat : “ LOCATE 7, 10: PRINT “Telepon : “ LOCATE 5, 19: LINE INPUT Nm$

IF Nms = “” THEN END DataMhs.Nama = Nm$

LOCATE 6, 19: LINE INPUT DataMhs.Alamat LOCATE 7, 19: LINE INPUT DataMhs.Telepon PUT #1, NoRec, DataMhs

NoRec = NoRec + 1 WEND

CLOSE END

Pembacaan Data

Untuk membaca data yang tersimpan di dalam file random, maka gunakan statement GET.

Bentuk Umum :

atau jika record didefinisikan dengan statement TYPE .. END TYPE GET #nomFile [, nomRec]

GET #nomFile [, nomRec], varRecord

(11)

Contoh-1 :

Mengambil data pada posisi record ke-3

OPEN “Kartu” FOR RANDOM AS #1 LEN = 22 FIELD #1, 20 AS Nama$, 2 AS Usia

GET #1, 3 END

Contoh-2 :

TYPE JenisData

Nama AS STRING * 20 Usia AS INTEGER END TYPE

DIM RecData AS JenisData

OPEN “Kartu” FOR RANDOM AS #1 LEN = 22 GET #1, 3, RecData

END

Contoh Aplikasi 3

Membuat program untuk mencetak record-record yang tersimpan dalam file TELEPON.DTA

‘======================================================

‘Program : RANDOM3.BAS

‘Keterangan : Contoh pembacaan data dari file random

‘======================================================

OPEN “R”, #1, “C:\DATA\TELEPON.DTA”, 57

(12)

FIELD #1, 20 AS Nama$, 30 AS Alamat$, 7 AS Telepon$

noRec = 1 CLS

PRINT “NAMA ALAMAT TELEPON”

PRINT “---”

WHILE NOT EOF(1) GET #1, noRec

Telp& = CVL(Telepon$)

PRINT Nama$, Alamat$, Telp&

noRec = noRec + 1 WEND

CLOSE END

Contoh Aplikasi 4

Membuat program untuk mencetak record-record yang tersimpan dalam file TELEPON.DTA. Pembacaan record menggunakan variabel record yang didefinisikan oleh statement TYPE .. END TYPE.

‘======================================================

‘Program : RANDOM4.BAS

‘Keterangan : Contoh pembacaan data dari file random

‘======================================================

OPEN “R”, #1, “C:\DATA\TELEPON.DTA”, 57 TYPE Data1

Nama AS STRING * 20 Alamat AS STRING * 30 Telepon AS LONG

END TYPE

(13)

DIM DataMhs as Data1

noRec = 1 CLS

PRINT “NAMA ALAMAT TELEPON”

PRINT “---”

WHILE NOT EOF(1)

GET #1, noRec, DataMhs

PRINT DataMhs.Nama, DataMhs.Alamat, DataMhs.Telepon noRec = noRec + 1

WEND CLOSE END

(14)

Sesi/Perkuliahan ke: 12

Tujuan Instruksional Khusus :

4. Memahami Konsep File Sequential

5. Mengetahui pembuatan file Sequential dengan bahasa Basic 6. Mengetahui Operasi file Sequential dengan bahasa Basic

Pokok Bahasan : BERKAS SEQUENTIAL (FILE SEQUENTIAL)

Deskripsi singkat : Dalam pertemuan ini akan mempelajari tentang konsep file sequential, pembuatan file sequential dan operasi file sequential

Reference :

4. Insap Santoso, Ir.,MSc, Program-program Terapan Menggunakan Quick Basic, Andi Yogyakarta.

5. Jogiyanto H.M, Teori dan Aplikasi Program Komputer Bahasa Basic, Andi Yogyakarta.

6. Rijanto Tosin, Quick Basic, Dinastindo.

BERKAS SEQUENTIAL

(15)

Pengertian File dalam BASIC

File data (data file) adalah rekaman dari data. Secara fisik, file ada pada alat simpanan luar (external memory) seperti disket , hardisk, magnetic disk.

File program BASIC (BASIC program file) adalah file yang berisi program yang ditulis dengan bahasa BASIC. File ini berakhiran .BAS

File yang akan dipelajari dalam materi File ini adalah file data, yaitu file yang berisi dengan data, bukan berisi program.

Pada bagian sebelumnya, untuk menyimpan data dipergunakan statemen READ-DATA. Untuk data dalam jumlah yang besar, penyimpanan data dengan menggunakan statemen READ-DATA tidak efisien. Oleh karena itu dianjurkan untuk menggunakan file data.

Keuntungan yang didapat dengan cara menyimpan data ke dalam suatu file jika dibandingkan dengan penyimpanan data menggunakan READ-DATA adalah sebagai berikut :

1. Data yang ada pada statemen DATA pada file program semuanya akan dimasukkan ke memori internal komputer (RAM) dan bila volume data ini besar, memori internal komputer dapat tidak cukup untuk menampungnya.

Dengan menggunakan file data, semua data tersimpan di memori eksternal dan hanya data yang dibutuhkan saja yang akan diambil dan diletakkan di memori internal komputer.

2. Dengan menggunakan statemen READ-DATA, maka program menjadi lebih panjang, karena semua data ditulis didalam program.

3. Data yang ada di statemen READ-DATA hanya dapat digunakan oleh program yang mengandung statemen ini saja. Program lain yang tidak mengandung data tersebut tidak dapat menggunakannya, kecuali datanya diketikkan atau digabungkan lagi didalam program yang akan menggunakannya. Akibatnya suatu aplikasi tidak dapat menggunakan data milik aplikasi yang lain.

4. Modifikasi dari data yang ada di statemen READ-DATA lebih sulit dilakukan oleh pemakai program. Perubahan, penambahan, atau pengurangan data di statemen READ-DATA harus dilakukan dengan membuka dan merubah program yang mengandung data tersebut, sehingga

(16)

pemakai program harus mengerti programnya. Dengan menggunakan file data, modifikasi data dapat dilakukan dengan lebih mudah oleh si pemakai program, karena tidak terlibat langsung dengan perubahan programnya.

File data pada dasarnya terdiri atas record-record yang memuat informasi.

Dibawah ini adalah contoh data yang akan direkam ke dalam file.

NAMA UMUR ALAMAT

Zeini 27 Jakarta

Rudi 30 Bandung

Supriyatno 26 Jakarta

Sari 24 Jakarta

Jhonny 19 Jakarta

Abdi 25 Jakarta

Data diatas terdiri atas 3 field yaitu field Nama, Umur dan Alamat. Data tersebut memuat 6 buah record. Kumpulan dari record tersebut tersimpan dalah sebuah file.

Untuk membedakan antara satu file dengan file lainnya diperlukan sebuah nama untuk masing-masing file. Aturan yang berlaku untuk nama file data sama halnya dengan yang berlaku untuk nama file program.

Di dalam BASIC, file data dapat dibedakan dalam 2 tipe tergantung dari format atau organisasi dari data tersebut yang disimpan didalam file, yaitu file data sequential (akses urut) dan file data random (akses acak)

File Data Sequential

File data akses sequential (urut) sebenarnya merupakan berkas teks ASCII.

Setiap record dalam file data akses urut tersimpan sebagai sebuah baris teks, yang diakhiri dengan carriage-retur n dan line-feed (CR-LF).

(17)

Panjang setiap record dalam file data akses urut bisa berbeda satu sama lain.

Gambar dibawah ini menyajikan contoh sebuah file data akses urut dengan 3 record yang setiap recordnya terdiri atas 3 buah field Nama, Umur dan Alamat.

Record 1

“ Z e i n i “ , 23 “ J a k a r t a “

Field 1 Field 2 Field 3 Record 2

“ R u d i “ , 30 “ B a n d U n g “

Field 1 Field 2 Field 3 Record 3

“ J h o n n y “ , 23 “ J a k a r t a “

Field 1 Field 2 Field 3

Gambar 12.1. Gambaran File Data Akses Urut dengan 3 Record

Dalam file data akses urut, tipe data yang akan disimpan dalam field menentukan posisi awal dan akhir dari field yang bersangkutan.

Membuat File Baru.

Membuat file dapat diibaratkan dengan menggunakan sebuah buku. Buku harus dibuka terlebih dahulu sebelum digunakan, kemudian baru ditulisi dan setelah selesai ditulisi, maka buku harus ditutup. Demikian juga dengan file data,

(18)

sebelum diisi dengan data, maka file harus dibuka terlebihdahulu dan setelah diisi, file harus ditutup.

Membuka File

Sebelum data yang disimpan dalam file data bisa dibaca, atau untuk menyimpan data ke dalam file data, terlebih dahulu file data tersebut harus dibuka. Pada saat membuka file data akses urut, tentukan terlebih dahulu apakah file tersebut sebagai file input, yaitu file yang isinya akan dibaca, atau sebagai file output, yaitu tempat untuk merekam data.

Bentuk umum statemen untuk membuka file data akses urut adalah sebagai berikut :

OPEN “mode”,[#]nomor file,namafile

Keterangan :

mode : adalah mode operasi dari file yang akan dibuka. Pada file data akses urut, mode file dibedakan menjadi 2, yaitu :

O : menunjukkan output mode, yaitu file akan digunakan untuk diisi dengan data (output akan direkamkan ke file).

I : menunjukkan input mode, yaitu file akan digunakan untuk diambil datanya (input akan diambil dari file).

Nomor file : merupakan bilangan bulat antara 1 sampai dengan 255. Digunakan untuk menyatakan nomor file yang akan dibuka.

Nama file : merupakan nama dari file.

Alternatif lain untuk statemen OPEN adalah :

OPEN nama file FOR mode AS [#]nomor file

(19)

Keterangan :

mode : terdiri atas 3 macam, yaitu

OUTPUT sama dengan mode “O”

menunjukkan bahwa file akan dibuka sebagai file output, yaitu file yang akan diisi. Perlu berhati-hati karena jika file yang akan dibuka belum ada, maka file akan dibuat, dan siap diisi data. Tetapi jika nama file sudah ada dalam media eksternal yang dimaksud, maka file tersebut akan dikosongkan terlebih dahulu, yakni dengan menghapus semua isinya, kemudian data yang baru akan dituliskan ke dalam file yang sudah kosong tersebut.

INPUT sama dengan mode “I”

menunjukkanbahwa file akan dibuka sebagai file input, yaitu file yang isinya akan dibaca.

APPEND menunjukkan append mode, yaitu pada waktu file dibuka, posisi file berada di akhir file, sehingga file dapat ditambah dengan data yang baru. Mode ini tidak terdapat pada alternatif pertama. Dalam hal ini, file yang ditunjuk harus sudah ada dalam media eksternal yang dimaksud. Jika pilihan in idigunakan, maka file yang lama akan tetap ada, lengkap dengan datanya, sedangkan data yang baru akan ditambahkanpada posisi setelah data yang lama.

Contoh penulisan statemen OPEN untuk membuat file yang baru (output mode) : OPEN “O”,#1,”HASIL.DAT”

Atau dapat dituliskan dengan alternatif kedua sebagai berikut : OPEN “HASIL.DAT” FOR OUTPUT AS #1

Artinya : Buat file HASIL.DAT untuk diisi data.

(20)

Contoh penulisan statemen OPEN untuk membuka file yang telah ada (input mode) :

OPEN “I”,#1,”C:\Mydocumen\ALAMAT.DAT”

Atau dapat dituliskan dengan alternatif kedua sebagai berikut : OPEN “ALAMAT.DAT” FOR INPUT AS #1

Artinya : Buka file ALAMAT.DAT yang tersimpan pada direktori Mydocument yang ada pada Drive C.

Menutup File

File yang sudah diisi data perluditutup. Kegunaannyaadalah untuk bahwa pada saat file ditutup, semua data yang ada di dalam penyangga (buffer, yaitu tempat penyimpan data sementara yang menggunakan memori internal) akan dituliskan kedalam file, sehingga menghindari kemungkinan adanya data yang hilang.

Kegunaan yang kedua adalah untuk membebaskan nomor file, sehingga bisa digunakan oleh program yang lain.

Bentuk umum :

CLOSE [#nomor file]

Dengan nomor file adalah nomor file yang akan ditutup. Jika nomor file tidak dituliskan, maka semua file yang sedang terbuka akan ditutup semuanya.

Menyimpan Data Ke File

Untuk merekam / menyimpan data kedalam file digunakan statemen WRITE#.

Bentuk umumnya :

(21)

WRITE #nomor file,dafpar

Keterangan:

Nomor file : menyatakan nomor dari file yang akan digunakan untuk menyimpan rekaman data. File yang akan digunakan harus sudah dibuka dengan menggunakan statemen OPEN dalam bentuk OUTPUT atau APPEND.

Dafpar : merupakan ekspresi string atau numerik yang menyatakan data yang akan disimpan ke dalam file.

Contoh :

WRITE #1, “Zeini”,23,”Jakarta”

Selain penulisan menggunakan statemen WRITE#, terdapat alternatif lain untuk penulisan data, yaitu dengan menggunakan statemen PRINT#.

Bentuk umumnya :

PRINT #nomor file,dafpar Keterangan :

nomorfile dan dafpar fungsinya sama dengan nomor file dan dafpar pada statemenWRITE#

Contoh :

PRINT#1,”Zeini”,23,”Jakarta”

Contoh : Menyimpan data ke dalam suatu file dengan nama ALAMAT yang akan disimpan pada direktori MYDATA yang ada pada drive C.

OPEN “C:/MYDATA/ALAMAT” FOR OUTPUT AS #1 WRITE#1,”Zeini”,23,”Jakarta”

WRITE#1,”Rudi”,30,”Bandung”

WRITE#1,”Supriyatno”,26,”Jakarta”

(22)

WRITE#1,”Sari”,24,”Jakarta”

WRITE#1,”Jhonny”,19,”Jakarta”

WRITE#1,”Abdi”,25,”Jakarta”

CLOSE#1 END

Setelah program di atas dijalankan, maka pada direktori MYDATA yang ada pada drive C akan terbentuk satu file baru dengan nama ALAMAT. Dengan menggunakan statemen WRITE#, susunan data di dalam file ALAMAT dapat digambarkan sebagai berikut :

”Zeini”,23,”Jakarta”

”Rudi”,30,”Bandung”

”Supriyatno”,26,”Jakarta”

”Sari”,24,”Jakarta”

”Jhonny”,19,”Jakarta”

”Abdi”,25,”Jakarta”

Dari susunan diatas terlihat bahwa data yang disimpan didalam file dipisahkan dengan tanda koma.

Bandingkan dengan jika penulisan data menggunakan statemen PRINT#

OPEN “C:/MYDATA/ALAMAT” FOR OUTPUT AS #1 PRINT#1,”Zeini”,23,”Jakarta”

PRINT#1,”Rudi”,30,”Bandung”

PRINT#1,”Supriyatno”,26,”Jakarta”

PRINT#1,”Sari”,24,”Jakarta”

PRINT#1,”Jhonny”,19,”Jakarta”

PRINT#1,”Abdi”,25,”Jakarta”

CLOSE#1 END

Hasilnya :

(23)

Zeini 23 Jakarta Rudi 30 Bandung Supriyatno 26 Jakarta Sari 24 Jakarta Jhonny 19 Jakarta Abdi 25 Jakarta

Dari susunan di atas terlihat bahwa antara field yang satu dengan field yang lainnya tidak dipisahkan oleh tanda koma sebagai pembatas (delimiter).

Sehingga dalam satu record akan dianggap hanya terdiri dari satu field saja. Oleh sebab itu, agar posisi field-field dalam satu record tetap terjaga maka sebaiknya gunakan statemen WRITE# untuk menulis data ke dalam file.

Mengambil Data Dari File

Untuk membaca atau mengambil data yang tersimpan dalam suatu file maka diperlukan proses pembacaan data. Untuk itu digunakan statemen INPUT#.

Bentuk umumnya :

INPUT #nomor file, varlist Keterangan :

Nomor file : merupakan nomro dari file yang akan dibaca. File yang akan digunakan harus sudah dibuka dengan menggunakan statemen OPEN dalam bentuk INPUT.

Varlist : merupakan nama variabel yang akan digunakan untuk menampung data yang dibaca. Variabel ini dapat berupa variabel string maupun numerik tetapiharus disesuaikan dengan data yang akan dibaca.

(24)

Langkah-langkah di dalam menampilkan semua data yang ada didalam filedata akses urut adalah sebagai berikut :

1. File dibuka dengan mode “I” atau INPUT, karena data akan diambil dari file ini.

2. Data diambil atau dibaca dari file mulai dari record pertama sampai dengan record terakhir atau akhir dari file. Akhir dari file dapat dideteksi dengan fungsi EOF dengan sintaks :

EOF(nomor file)

3. Bila belum sampai di akhir file atau belum mencapai record yang terakhir, maka data dapat dibaca dengan menggunakan statemen INPUT#.

4. Setelah semua data dibaca dari file, untuk mengakhiri penggunaan file, maka file harus ditutup dengan statemen CLOSE atau END.

Contoh : Mencetak isi data yang tersimpan di dalam file ALAMAT yang ada pada direktori MYDATA pada drive C. File ini sebelumnya telah dibuat dengan menggunakan statemen WRITE#.

PRINT “DAFTAR ALAMAT KOLEGA “ PRINT

PRINT

PRINT ”---“

PRINT “NAMA UMUR ALAMAT “ PRINT”---“

Items$= “\ \ ## \ \”

OPEN “C:\MYDATA\ALAMAT” FOR INPUT AS #1 Do Until EOF(1)

INPUT #1,Nm$,Umur,ALM$

PRINT USING item$; Nm$; Umur;ALM$

LOOP

PRINT”---“

CLOSE END

(25)

Hasil setelah dijalankan :

DAFTAR ALAMAT KOLEGA

---

NAMA UMUR ALAMAT

--- Zeini 23 Jakarta

Rudi 30 Bandung

Supriyatno 26 Jakarta

Sari 24 Jakarta

Jhonny 19 Jakarta

Abdi 25 Jakarta

--- Menambah Data

Untuk menambah data di dalam file diperlukan penulisan dengan menggunakan WRITE#, namun dalam file yg diorganisasikansecara urut, akses terhadap record data akan dilakukan secara berurutan mulai dari recordpertama sampai dengan terakhir.

Jadi penambahan data dapat menyebabkan data yang telah disimpan sebelumnya akan terhapus. Hal ini disebabkan data yang baru akan ditulis dengan cara menimpa data sebelumnya. Untuk itu penambahan data harus dilakukan dengan memperhatikan record data didalamnya.

Agar dalam penambahan data tidak menyebabkan data yang lama terhapus, maka digunakan mode APPEND pada statemen OPEN sewaktu membuka file yang bersangkutan.

Mode APPEND menyebabkan penunjuk (pointer) record akan ditempatkan diakhir file yaitu record terakhir. Dengan demikian,penambahan record akan dimulai pada record terakhir sehingga tidak menghapus record sebelumnya.

(26)

Contoh : Menambah data yang yang akan tersimpan pada file ALAMAT, dimana file ini sebelumnya telah dibuat dengan menggunakan statemenWRITE#.

OPEN “C:\MYDATA\ALAMAT” FOR APPEND AS #1 Nama$ = “xxx”

DO UNTIL Nama$=””

INPUT “Nama = “; Nama$

If Nama$=””THEN EXIT DO INPUT “Umur =”;Umur INPUT “Alamat= “;ALM$

PRINT “---“

WRITE#1, Nama$, Umur, ALM$

LOOP CLOSE END

Hasil setelah dijalankan :

Nama = Iwan Umur = 32 Alamat = Jakarta

---

maka di dalam file ALAMAT akan bertambah satu data baru pada record terakhir sehingga hasilnya jika program untuk membaca isi data pada contoh sebelumnya dijalankan adalah sebagai berikut :

DAFTAR ALAMAT KOLEGA

---

NAMA UMUR ALAMAT

--- Zeini 23 Jakarta

Rudi 30 Bandung

(27)

Supriyatno 26 Jakarta

Sari 24 Jakarta

Jhonny 19 Jakarta

Abdi 25 Jakarta

Iwan 32 Jakarta

---

Record baru menempati posisi record yang terakhir.

(28)

INSTRUKSI FILE

1. FILEATTR

Digunakan untuk mendapatkan keterangan mengenai akses suatu file sewaktu file tersebut dibuka dengan statemen OPEN.

Bentuk Umum :

FILEATTR (nomor file, atribut)

Keterangan :

Nomor file : bilangan bulat yang menyatakan nomor file. File yang dinyatakan disini merupakan file yang sebelumnya telah cibuka dengan statemen OPEN

Atribut : parameter ini terdiri dari dua pilihan nilai yaitu :

• nilai 1 berarti fungsi FILEATTR akan mengembalikan sebuah bilangan yang menunjukkan jenis akses dari file yang bersangkutan, yakni :

*

• Nilai 2 berarti fungsi bilangan yang akan dikembalikan oleh fungsi FILEATTR berupa file handle DOS.

Contoh : Buka 3 file dengan setiap metoda akses yang berbeda. Kemudian file tersebut diperiksa dengan menggunakan fungsi FILEATTR untuk mengetahui akses pada file bersangkutan.

OPEN “File1” FOR OUTPUT AS #1 OPEN “File2” FOR RANDOM AS #2 OPEN “File3” FOR APPEND AS #3 Print “File No. Jenis Akses DOS handle”

For I = 1 to 4

Bilangan Jenis File

1 Input

2 Output

4 Random

8 Append

32 Binary

(29)

X = FILEATTR(I,1) SELECT CASE x

CASE 2

Jenis$=”OUTPUT”

CASE 4

Jenis$=”RANDOM”

CASE 8

Jenis$=”APPEND”

END SELECT

PRINT I, Jenis$, FILEATTR(I,2) Next I

END

Hasilnya :

File No. Jenis Akses DOS handle 1 OUTPUT 5

2 RANDOM 6 3 APPEND 7

2. FILES

Digunakan untuk menampilkan nama-nama file dalam suati direktori / disket.

Bentuk umum :

FILES spesfile

Keterangan :

Spesfile : merupakan ekspresi string yang menunjukkan spesifikasi file yang akan ditampilkan. Spesifikasi ini mencakup penentuan nama drive dan direktori dari file-file yang akan ditampilkan.

Contoh :

INPUT “Ketik nama drive dan path :”;nama$

FILES nama$

END

3. KILL

Digunakan untuk menghapus suatu file dari disk.

Bentuk umum :

KILL spesfile Keterangan :

Spesfile : merupakan ekspresi string yang menunjukkan spesifikasi file yang akan dihapus. Spesifikasi ini mencakup penentuan nama drive dan direktori dari file-file yang akan ditampilkan

Contoh :

(30)

Print “Ketik nama file yang akan dihapus atau tekan ENTER untuk mengakhiri”

Line Input “Nama File :”;namafl$

If namafl$=”” then END KILL namafl$

4. NAME…AS…

Digunakan untuk mengganti nama suatu file.

Bentuk umum :

NAME nama1 AS nama2

Keterangan :

Nama1 : nama file yang akan diganti

Nama2 : nama file baru sebagai pengganti nama1

Contoh :

NAME “Coba.BAS” AS “LATIH.BAS”

5. MKDIR

Digunakan untuk membuat sebuah direktori baru.

Bentuk umum :

MKDIR namapath

Keterangan :

Namapath : ekspresi string yang menunjukkan nama direktori yang akan dibuat.

Contoh :

MKDIR “DirData”

6. CHDIR

Digunakan untuk pindah dari satu direktori ke direktori lainnya.

Bentuk umum :

CHDIR namapath

Keterangan :

Namapath : ekspresi string yang menunjukkan nama direktori yang akan dituju.

Contoh :

CHDIR “C:\DATA1”

7. RMDIR

Digunakan untuk menghapus suatu direktori.

Bentuk umum :

RMDIR namapath

(31)

Keterangan :

Namapath : Namapath : ekspresi string yang menunjukkan nama direktori yang akan dihapus.

Contoh :

RMDIR “C”\DATA1”

8. SEEK

Digunakan sebagai statemen maupun fungsi.

Penggunaan SEEK sebagai statemen berarti menempatkan pointer pada posisi tertentu dalam suatu file.

Bentuk umum :

SEEK #nomor file,Pos

Keterangan :

Nomor file : nomor file untuk penempatan pointer.

Pos : posisi pointer yang akan ditempatkan.

9. FREEFILE

Digunakan untuk mendapatkan bilangan selanjutnya dari nomor file yang terakhir dipakai.

Bentuk umum :

FREEFILE

Contoh :

OPEN “Data1” FOR RANDOM AS #1 OPEN “Data2” FOR RANDOM AS #2 Nofile = FREEFILE

OPEN “Data3” FOR RANDOM AS Nofile END

10. RESET

Digunakan untuk menutup semua file dalam dik.

Bentuk umum :

RESET

(32)

Contoh :

OPEN “Data1” FOR RANDOM AS #1 OPEN “Data2” FOR RANDOM AS #2 OPEN “Data3” FOR RANDOM AS #3 CLOSE#1

RESET END

11. LOF

Digunakan untuk mengetahui ukuran file. Satuan yang digunakan adalah byte.

Bentuk umum :

LOF (nofil)

Keterangan :

Nofil : menyatakan nomor file yang merupakan indikasi untuk menentukan file yang akan diperiksa ukurannya.

Contoh :

OPEN “CONTOH.DAT” FOR RANDOM AS #1 PRINT “Ukuran file adalah : “;LOF(1); “byte”

CLOSE END

12. LOCK dan UNLOCK

LOCK digunakan untuk mengunci sebagian atau seluruh record dalam suatu file. Dengan mengunci suatu file maka file tersebut tidak dapat diakses.

UNLOCK digunakan untuk membuka file yang telah dikunci dengan menggunakan LOCK. Keduanya hanya digunakan dilingkungan network.

Bentuk umum :

LOCK #nomor file,rec/start TO end UNLOCK #nomor file,rec/start TO end

Keterangan :

Nomor file : nomor file yang akan di LOC atau UNLOCK Rec : jumlah record atau byte yang akan dikunci.

Start : nomor record atau byte pertama yang akan dikunci End : nomor record atau byte terakhir yang akan dikunci.

(33)

Contoh :

LOCK #2 LOCK #2,32 LOCK #2, TO 32 UNLOCK #2

UNLOCK #2, 2 TO 30

13. LOC

Digunakan untuk mengetahui posisi akhir dari record yang dibaca atau ditulis.

Bentuk umum :

LOC (nomor file)

Gambar

Gambar  dibawah  ini  menyajikan  contoh  sebuah  file  data  akses  urut  dengan  3  record yang setiap recordnya terdiri atas 3 buah field Nama, Umur dan Alamat

Referensi

Dokumen terkait

Dari hasil Peneliti penulis menyimpulkan bahwa dari hasil penelitian tersebut dapat terlihat bahwa tidak adanya hubungan pengetahuan terhadap pendidikan seseorang karena

Keluarga adalah dua atau lebih dari dua individu yang tergabung karena hubungan darah, hubungan perkawinan atau pengangkatan dan mereka hidup dalam suatu rumah tangga, berintekrasi

Dari hasil penelitian yang telah dilakukan di Desa Miau baru dengan menggunakan kuesioner dan wawancara yang tidak mendalam kepada beberapa responden

Tabel 4.4 di atas menunjukkan tabulasi uji ahli teknologi pembelajaran pada produk setelah perbaikan diperoleh jumlah total 211 dengan skor maksimal 250 serta presentasi

Respon sel superkapasitor akan menghasilkan output arus, sehingga dapat diolah pada proses selanjutnya pada input analog to digital, maka dibutukan rangkaian

Penambahan terak baja juga meningkatkan pertumbuhan dan produksi padi sampai 145%, hal ini merupakan pengaruh tidak langsung dari penambahan terak baja yang dapat memperbaiki

Peraturan Pemerintah Nomor 19 Tahun 2010 tentang Tata Cara Pelaksanaan Tugas dan Wewenang serta Kedudukan Keuangan Gubernur sebagai Wakil Pemerintah di Wilayah

Bagian pengolahan saus ini mempunyai fungsi dan ruang lingkup pekerjaan menyiapkan dan membuat berbagai macam saus serta makanan panas yang pada dasarnya merupakan makanan pokok