Modul
8
File
Sekuensial
tt\,:..-,:, \i',i,
Deskripsi
Umum
# *..
.Dalam pascal, kita menggunakan file agar hasil program setelah di-run tersimpan secara perrrtq4en.,-{1 dalam harddisk dan bukan tersimpan sementara dan hilang ketika program ditutup. File biasanya digunakan
nitU
pin
arsip-arsip yang akan digunakan kembali.'':i ,r:
ooerasi-operasi Dasar pada
File
;$
"ii',:,,
"'., ,,,, ,, ,r,1. Assign(VariabelArsip,NamaArsip)
l.,t
o,i;,'i.-Perintah ini iligunakan untuk menghubungkan file fisik dengan
vagiifeJnyi,r,
,,:
''ii'2.
Rewrite(VariabelArsip)3.
4.
Perintah ini digunakan untuk membuat dan membuka Rte
gffifii+le
".,:riReset(VariabelAsip)
9
.-..Perintah ini digunakan untuk memindahkan pointeri<e
i,*."t fih"..t.u
mtmiuta
fileyang
sudah ada.Read(VariabelArsip,daftar)
.r,i:.
t"r1n
..'i.,1r,.1n.'V;,ffi. Perintah i n i d igu na ka n u ntu k m e m baca i s i f i r e ig6g1"qjF
ft
ole'itpoi nter.Write(VariabelArsip,daftar)
.-
t=-a,,.''{'',-,
'i':,,;,,,,1iPerintah ini digunakan untuk menulis dati"'hp,fi|e pada tempat yang ditunjuk oleh pointer.
Close(VariabelArsip)
_
,:":t.
^li
Peri nta h i ni digu n a ka n u ntu k men utUp.
nt
setetifr.S:Eiai d iproses.6.
Keterangan
:
",:.-':, -.-',:
-o
VariabelArsip adalah namavariabetfite
.
o
NamaArsip adalah B-ama file yang.ai*h.Oidferasikantr
Daftar adalah narna i.t variabelyang harganya akan dituliskan ke dalam file€.:r.+
q'$S,.,.
"'1,.,
.Jenis
File
+'
. ' ;:+.:,"
Dalam pascal,
dikdffij.ffiE
ltnis
nteyaitu file
teks danfile
bertipe. yangmembedakan kedua jenis
file ini
adalahpenggunaannya dan tipe
-4*-.e yang dapat disimpan di datam file tersebut.
r.
Fil€Teks
4iiDalamPascal;:dikenal adanya bentuk file text, yaitu file yang berisikan deretan karakter. pendefinisian file text cukup menggunakan statement
text.
Contoh :Dengan pendeklarasian seperti contoh diatas maka berarti
kita mempunyai dua buah variabel file yaitu
fileteksl
dan fileteks2 yang bertipe text.Selain itu terdapat beberapa operasi yang hanya dapat digunakan dalam operasi file teks yaitu :
tr
Append(VariabetArsip)operasi ini adalah prosedur yang hanya dapat diterapkan dalam filq text. Fungsinya untuk menambhakan data ke dalam file text.
tL5
TUJUAN PRAKTIKUM:
L.
Praktikan memahami bentuk-bentuk file dalam algoritma2-
Praktikan memahami bentuk penyimpanan data dengan menggunakan file text dan file bertipe3.
Praktikan dapat membedakan antara file teks dan file bertipe4'
Dapat membukafile,
menutupfile,
menuliskan data kefile,
menampilkandata
baik dalamfile text
maupun dalam file bertipe dalam a maupun dalam bahasa pascalType
t_f
f.te_text :
text,.
Var
fileteksl- : t_fi1e_text;
f
i1et.eks2
:
text,.
VariabelArsip adalah nama variabel yang mewakili arsip yang akan dioperasikan yang bertipe data text. Setelah prosedur
ini
dilaksanakan maka arsip akan dibuka danpointer
berada pada akhirfile
atau Endof
File (EOF).Sehingga semua operasi akan dimulai pada akhir arsip. Readln(Va riabelArsip,dafta r)
Digunakan untuk membaca suatu baris, setelah selesai maka pointer akan turun ke baris berikutnya. Writeln(Va riabelArsip,daftar)
Digunakan
untuk
menuliskan suatu baris ke file, setelah selesai maka pointer akan turun ke baris berikutnya' Eof(VariabelArsip)Fungsi yang digunakan
untuk
mengecek apakahpointer telah
beradadi
akhir
file
atau tidak'
Bilaya
true, sebaliknya false. Fungsi ini bertipe data Boolean.Eoln(VariabelArsip)
Fungsi yang berfungsi untuk mengecek apakah pointer ada di akhir baris atau
tidak
Bila ya maka trU6- sebaliknya false. Fungsi inijuga bertipe data booleantr
SeekEof(VariabelArsip)Fungsi yang berfungsi
seperti
EOFtetapi
fungsiini
akan melompatiblankd.aniitab
seb.blurn mengetes EOF.Keluaran adalah berupa boolean, yaitu true bila EOF, dan false bila
sebaliknv,a,"-
':'r't,
ti
o SeekEoln(VariabelArsip)
tu,j.::.:
rl
'r|."-Fungsi yang berfungsi seperti EOLN
tetapi
fungsiini
akan melompati'tlEn;lg*dan tdb.. sebelum mengetes EOLN.Keluaran adalah berupa boolean, yaitu true bila EOLN, dan false bila'qe,laliK.a.,l;ffi1,,^
2.
File Bertipe.ili: t! :r:il..':.ltil:.. :ll]l Iti.\ j::i'::.i.. {S
File Bertipe adalah file yang berisikan deretan data yang bertipe sama. Bedaiiy.,3. dehgan file teks adalah file teks hanya menyimpan data yang berupa sederetan karakter saja.'sed,angkan pada
file
bertipe dapat menyimpan deretan data bertipe apapun yang bertipe sama. Notasi pendefinisian file,.beqtipe adalah sebagai berikut :Var
NamaVariabel
: file
of ti
tat
Contoh pendeklarasiannya dalam pascal adalah :
Var
F:
file of int
perintah yang digunakan pada"lfilg-be'rtipe umumnya sama dengan file teks, hanya saja pada
file
bertipe tidak dapat digunakan perintah AppendiRead16.Writefn, Eoln, SeekEoln. Hal ini dikarenakan padafile
bertipe tidak dikenal baris data. File bertipe tidak menyi'tttpan dat'il+er'baris, melainkan per data/record'Beberapa perintah yang dapat
digrlna!
oleh file bertipe namun tidak dapat digunakan pada file teks adalah :2.
Seek(va
rJi
I e, n o_r'eco rd )Seringkatiilru,q,.!:n suatu
file
bertipe ingin ditemukan data/recordtertentu.
Untuk menentukan datatertentu
pada file,'be-rtipellidj$t,n"t.rn prosedur Seek. DimanavarJile
adalah sebuah variabelfile
bertipe yang sudah di-assignterlebih. dah
liu
sedangkan no_record adalahnomor record yang ingin
ditemukan. Sebagai catatan record pertama pada fi'le bertipe dimulai dari 0, bukan dari 1.FileSize
Masalah yang kadang muncul adalah bagaimana caranya untuk mengetahui berapa data/record yang ada,pada
file bertipe sehingga jika digunakan perintah SEEK, no_record tidak melebihi dari jumlah record yang ada. Dengan menggunakan
fungsi
FileSizedapat diketahui
berapabesar ukuran suatu
file
dalam satuan record.
Cara penulisannya sebagai berikut :v-banyak-record
:= FileSize (var-f
ile-tipg]l
dimana v_banyak_record adalah variabel bertipe longint(bilangan bulat) sedangkan
var-file-tipe
adalah variabel bertipe file yang sudah di-assign dan dibuka.I
I lI
3. Tru ncate(var_file_tipe)
untuk menghapus record
tertentu
pada file bertipe digunakan prosedur Truncate.Dimana
var-file-tipe
adalah variabel bertipefile
yang telah di-assign dan dibuka. Biasanya prosedur ini diawali dengan perintah Seekterlebih dahulu. Misalkan ingin dihapus mulai dari record ke-n pada suatu file bertipe makapenulisannya sebagai berikut :
Contoh Penesunaan Sekuensial File
Seek(var_fi]e,n)
;Truncate (var_f
ile)
,.uses
crt;
var
arsipText : !ext;
begin
clrgcr,.
assign
(arsiprext,'
TULISAN. TXT' ) ;append(arsipText)
;
{membukafile
danwriteln(arsipText,,
praktikum
di
DAsKoMclose
(arsipText
) ,.end.
meletakkan
pointer di akhir
enjoy
banget
I') ,.
{menuliskan
file]
kaLa2]
47
program
inputFile,'
uBeg
crg;
var
arsip : file of integer;
nilai : integer;
begin
clrgcr,'
asEigEr (
arsiP,'
ANGKA. DAT' )rewrite(arsiP);
nilai
: =100;write(arsiP,niLai);
close(arsiP);
end-il"ffi#.#''i:
,+
program
input.File;
ugea crts;
var
arsip : file of
intseger
nilaj-:
inueger;
begin
clrscr,'
asgign
(arsiP,'
ANGI(A. DATreset
(arsip)
;whj.le
not
EoF(arsip)
dobegin
read
(arsiP,
nilai
) ;!,triteln (nilai
) ; end;close(arsip);
readln;
end. ::,:.t- \:r ;:";'l:::' 'ri ti,i:. ,t:1,:, "L1,. i ::1:.., -,rw '.i/1xt 'tbi..."
.
-":{'1,#,. ...l-- ' a.h ,,.1" -., '* " 1rr 'i"l\r: i::{t\i. .::lr:li-:r: \i: ::-:;ri.. :::,o4:-:
'l: i-\f.iii: nl pegawai