Download as pdf
Download as pdf
You are on page 1of 9
pROGRAM-PROGRAM TERAPAN MENGGUNAKAN QuickBASIC REEL ae Bab IX BERKAS DATA nda telah mempelajari statemen READ yang digunakan untuk mem- baca nilai data yang dinyatakan dalam statemen DATA. Jika anda menyimpan program yang berisi statemen READ dan DATA, anda menyim- nnilai-nilai data sebagai bagian program. Hal yang demikian tidak selalu diinginkan karena data tersebut hanya bisa digunakan oleh pro- gram yang bersangkutan. Dalam beberapa program terapan, data yang tersimpan sebagai program saja tidak cukup luwes untuk menangani permasalahan; dengan demikian pertu dicari cara pemecahannya, khususnya tentang bagaimana menyimpan data tetapi yang bukan merupakan bagian dari sebuah pro- gram. Untuk itu diperlukan apa yang disebut dengan berkas data. Dalam berkas data anda dapat menyimpan data dengan cara yang berbeda de- ngan yang sering anda laksanakan jika anda menyimpannya bersama- sama dengan statemen DATA. Lebih jauh, data yang tersimpan dalam berkas data bisa diguniakan oleh beberapa program. Selain itu, data yang tersimpan dalam berkas data akan lebih tersembunyi dibanding jika di- simpan sebagai bagian program, sehingga mengurangi kemungkinan penggunaan data secara tidak benar. Secara umum, sesuai dengan cara penanganan berkas data, dike- nal 2 tipe berkas data, yaitu berkas masup urut (sequential access file), dan | berkas masup acak (random access file). Sesuai dengan namanya, pada | berkas masup urut, rekaman harus dibaca atau ditulis secara berurutan mulai dari rekaman ke 1. Tetapi pada berkas masup acak, pembacaan atau _ penulisan rekaman tidak harus dimulai dari rekaman nomor 1. Bab ini _ akan membicarakan kedua jenis berkas data seperti dijelaskan di atas. ‘ Dalam subbab 5.2. telah dijelaskan pengertian rekaman (record) dan medan (field). Dalam bab ini kita akan banyak menggunakan rekaman _ dan medan, serta berkas data, yakni sekumpulan rekaman yang tersimpan _ dalam piranti penyimpan sekunder. p URUT mya merupakan berks te ‘odifikasi berkas ini m iki, misalnya Wordstae s DATA MASU data masup urut sebena! Se bisa melihat atau men i id ASCII, sehingB? 2am olah Kata yang anda m m berkas data masup urut tersimpan z ing diakhiri dengan ‘arriage-return dan line-eed (CR. m subbab 5.2. setiap rekaman terdiri dari dalam setiap rekaman, i urutan yang sama alam berkas masuP urut bisa berbeda mmedan bisa bervariasi. Tetapi teap_ 9.1. BERKA: yp rekaman kas masup urut dengan tiga punyai dua buah medan. Rekaman 1 Boe pECoONGOoUOGweBOREGCE (a ee ee re oo —_— medan 1 medan 2 Rekaman 2 medan 2 +|Llolvje|2]s|nje Peer rs i ni medan 2 aaa medan 1 Rekaman 3 4 Berkas Data Masup Urut 167 Dalam berkas masup urut tipe data yang akan disimpan dalam medan menentukan posisi awal dan akhir dari medan yang bersangkutan. ika kita membaca isi medan ke dalam perubah bertipe, maka karakter- a 5 Jk (ter berikut bisa merupakan tanda akhir medan: _ Tanda petik ganda ("), jika untai diawali dengan tanda petik ganda. - Koma (), jika untai tidak diawali dengan tanda petik ganda. * CR-LF jika medan tersebut meripaka medan trakhir dalam suatu rekaman. sebaliknya, jika kita membaca isi medan ke dalam perubah ber- tipe numeris, maka karakter-karakter berikut bisa merupakan tanda akhir medan: koma, satu atau lebih spasi, CR-LF. ga... Membuka Berkas Sebelum data yang disimpan dalam berkas data bisa dibaca, atau kita bisa menyimpan data ke dalam berkas data, terlebih dahulu berkas data tersebut harus dibuka. Pada saat anda membuka berkas data masup urut, anda harus menentukan apakah berkas tersebut sebagai berkas ma- sukan, yaitu berkas yang isinya akan dibaca, atau sebagai berkas keluar- an, yaitu tempat untuk merekam data anda. Bentuk umum statemen untuk membuka berkas data masup urut adalah: OPEN namaberkas FOR mode AS [#)nomor dengan namaberkas + nama berkas yang akan dibuka. nomor : bilangan integer yang menyatakan nomor berkas. Dalam bentuk umum di atas, parameter mode harus dipilih salah satu dari INPUT, OUTPUT, atau APPEND. Berkas namaberkas yang akan dibuka bisa berupa sembarang ungkapan, yang terdiri dari kombinasi huruf alphabet, bilangan 0 sampai 9, dan karakter-karakter khusus seperti (ACC tee ee =. Tetapi perlu anda ingat bahwa nama berkas selalu terdiri dari 8 karakter (dan bisa diikuti titik dan 3 pengenal berkas, misalnya DAT). Contoh berikut menunjukkan statemen- statemen untuk membuka berkas dengan benar: OPEN «,: \BAB9\PROGRAM\PROG9~1- DAT” FOR INPUT AS #1 yang berarti bahwa kita akan membuka berkas PROG9-1.DAT yang ter- simpan dalam subdirektori BAB9\PROGRAM pada pemutar cakram A sebagai berkas masukan, dan berkas tersebut diberi nomor 1: misalnya: ; namaBerkas§ = “NILAI.MHS” OPEN namaBerkas$ FOR OUTPUT AS #2 yang berarti bahwa kita akan membuka berkas NILAILMHS pag, cakram yang aktif (default) sebagai berkas keluaran, dan berkag he ™Utay diberi nomor 2. S lerseyt Perbedaan antara pilihan INPUT, OUTPUT, dan app, dijelaskan sebagai berikut: ND bis, CLOSE #1 ’ END SUB Program 9.2. Membaca isi rekaman dengan menggunakan state men LINE INPUTE. Bandingkan statemen pada baris 17 dari program di atas dengan statemen pada baris 34 dari Program 9.1. Keduanya digunakan untuk membaca isi rekaman. Statemen LINE INPUT# sangat berguna jika kita ingin mengkopi isi suatu berkas ke dalam berkas lain. Program 9.3. menyajikan contoh program untuk mengkopi isi berkas, dari berkas CONTOH1.DAT ke dalam berkas CONTOH2.DAT. aecaenasssnnseaensenenouaaanenennnenannceeeecsess ** Program 9.3. (PROG9-3.BAS) ‘ ** Contoh pemakaian statemen LINE INPUT# ‘* untuk mengkopi isi berkas ke berkas yang lai Caaneenaanceneatenueeenussananaenananenaaneee® ** Berkas yang akan dikopi * OPEN “A: \BAB9\PROGRAM\CONTOH1.DAT™ FOR pau ‘* Berkas tujuan ¢ OPEN “A: \BAB9\PROGRAM\CONTOH2.DAT” FOR pean A Berkas Data Masup Acak i KOPI SEDANG my a nad EOF (1) 6 ES, L : po UNTIL Paca isi rekaman yang akan dikopi i) [awe INPUT #1, t0iRekanans 19). . wo Sy wenuliskan ke dalam berkas tujuan + i WRITE #2¢ isiRekaman$ P PRINT END { LOOP esELESAL.. +17 | | 9.3. Mengkopi isi berkas. m di atas, statemen pada baris 9 digunakan untul. Dalam oie akan dikopi, dan statemen pada SATE AITALL ndan membuka berkas hasil kopian. Proses mengkopi tegac semban’ ye sampai dengan 24. Baris 20 akan membaca isi berkas yany; \ jade opi, dan dituliskan ke dalam berkas tujuan dengan menggunakar fl baris 23. jee ae peda statemen di atas, untuk membaca isi rekaman juge fungsi INPUTS. Dalam hal ini akan dibaca sejumlah ka- . kan seo suatu berkas. Sebagai contoh, statemen: a parisl$ = INPUTS(50, #1) yan membacd isi berkas dengan nomor 1 sebanyak 50 karakter. Dengan a fara yang sama, statemen | pRINT INPUTS$(75, #2) tk akan membaca isi berkas yang diberi nomor 2 sebanyak 75 karakter, dan kemudian mencetak apa yang diperoleh dari hasil pembacaan tersebut. 92, BERKAS DATA MASUP ACAK | Rekaman dalam berkas data masup acak akan disimpan dengan cara yang berbeda dibanding dengan rekaman dalam berkas masup urut Semua rekaman dalam berkas masup acak mempunyai panjang yang, \ : letap, demikian juga dengan panjang setiap medannya. Berdasar panjang 4 mkaman inj akan bisa ditentukan posisi awal dan akhir suatu rekaman. | lbih lanjut, dalam berkas masup acak tidak terdapat tanda baca koma sbagai pemisah medan, dan tidak terdapat karakter CR-LF sebagai akhir ;

You might also like