Untuk menyimpan dan membuka file kita bisa menggunakan tipe data
file. Pascal menggunakan bermacam-macam tipe data file, tapi yang paling
sering digunakan adalah tipe data text / textfile.
Pascal memperlakukan sebuah file sebagai serangkaian atau kumpulan komponen yang harus berupa tipe data yang seragam. Sebuah variabel dengan tipe data file memiliki nama sesuai tipe data yang akan disimpan dalam file. Tipe data file dideklarasikan dengan pola sebagai berikut :
type nama_variabel = file of Tipe_file;
Tipe_file menunjukkan tipe data yang disimpan dalam file. Tipe_file bisa berupa tipe data seperti integer, real, Boolean, enumerated, subjangkauan, record, array dan himpunan / set. Variabel dari sebuah tipe data file dibuat dengan deklarasi variabel :
var
f1, f2,...: nama-file;
Berikut ini adalah contoh deklarasi tipe data file sesuai tipe data yang akan disimpan dalam file.
type
rfile = file of real;
ifile = file of integer;
bfile = file of boolean;
datafile = file of record;
arrfile = file of array[1..4] of integer;
var
tanda_tanda : arrfile;
data_murid: datafile;
rfdata: rfile; tdaTA: ifile;
pilihan: bfile;
Membuat dan Menulis ke dalam Sebuah File
Mari kita membuat kode program untuk menulis file berisi record dari data siswa. Ini akan menghasilkan file bernama siswa.dat dan menuliskan data murid ke dalamnya.
Selanjutnya, kita akan mencoba membuat satu kode program lagi yang digunakan untuk menulis dan membaca file. Kita juga akan menggunakan tipe data file sebagai parameter. Program yang dihasilkan kode program di bawah ini menghasilkan file yang namanya sesuai dengan nama yang masukkan pengguna untuk menyimpan sekumpulan data. Berikutnya, program membuka dan memperhitungkan data yang ada.
Saat kode program di atas dieksekusi hasilnya bisa dilihat di dalam file dengan nama sesuai isi variabel "filename".
Menambahkan Text ke akhir sebuah File
Untuk menambahkan text setelah akhir sebuah file tanpa mengubah isinya, kita menggunakan prosedur append. append hanya bisa digunakan pada file dengan jenis text. Perhatikan program berikut ini.
Compile dan jalankan untuk melihat hasilnya!
Jangan lupa cek juga file yang dihasilkan!
Pascal memperlakukan sebuah file sebagai serangkaian atau kumpulan komponen yang harus berupa tipe data yang seragam. Sebuah variabel dengan tipe data file memiliki nama sesuai tipe data yang akan disimpan dalam file. Tipe data file dideklarasikan dengan pola sebagai berikut :
type nama_variabel = file of Tipe_file;
Tipe_file menunjukkan tipe data yang disimpan dalam file. Tipe_file bisa berupa tipe data seperti integer, real, Boolean, enumerated, subjangkauan, record, array dan himpunan / set. Variabel dari sebuah tipe data file dibuat dengan deklarasi variabel :
var
f1, f2,...: nama-file;
Berikut ini adalah contoh deklarasi tipe data file sesuai tipe data yang akan disimpan dalam file.
type
rfile = file of real;
ifile = file of integer;
bfile = file of boolean;
datafile = file of record;
arrfile = file of array[1..4] of integer;
var
tanda_tanda : arrfile;
data_murid: datafile;
rfdata: rfile; tdaTA: ifile;
pilihan: bfile;
Membuat dan Menulis ke dalam Sebuah File
Mari kita membuat kode program untuk menulis file berisi record dari data siswa. Ini akan menghasilkan file bernama siswa.dat dan menuliskan data murid ke dalamnya.
program DataSiswa;
uses crt;
type
Record_siswa = Record
nama: String;
addr: String;
end;
var
siswa: Record_siswa;
f: file of Record_siswa;
begin
clrscr;
//Buat dan Tulis File
Assign(f, 'siswa.dat');
Rewrite(f);
siswa.nama := 'Geri';
siswa.addr := 'Indonesia';
Write(f, siswa);
Close(f);
//Cari akhir File dan tambahkan data
Reset(f);
Seek(f, FileSize(f));
siswa.nama := 'Sani';
siswa.addr := 'Indonesia';
Write(f, siswa);
Close(f);
//Baca isi File
Writeln('=======================');
Reset(f);
while(not(eof(f)))do
begin
Read(f, siswa);
Writeln('Nama Siswa :', siswa.nama);
Writeln('Alamat Siswa : ', siswa.addr);
Writeln('=======================');
end;
Close(f);
readln
end.
Contoh
di atas menunjukkan cara
menulis dan membaca isi file. Sebelum membaca atau menulis file, kita harus menggunakan assign untuk menugaskan variabel dengan tipe file supaya menggunakan nama file sesuai yang kita sebutkan di parameter kedua dari assign. File yang digunakan harus berada di folder yang sama dengan programnya atau di direktori yang aktif.
Ketika dicompile dan dijalankan, program yang menggunakan rewrite akan membuat sebuah file bernama siswa.dat ke dalam direktori atau folder yang aktif atau folder yang sama dengan tempat program yang dijalankan.
Untuk membaca file, kita harus menggunakan reset. Reset menggunakan parameter berupa variabel bertipe file yang sudah di-assign. Reset akan membaca file sesuai dengan parameter kedua dari assign.
Ketika dicompile dan dijalankan, program yang menggunakan rewrite akan membuat sebuah file bernama siswa.dat ke dalam direktori atau folder yang aktif atau folder yang sama dengan tempat program yang dijalankan.
Untuk membaca file, kita harus menggunakan reset. Reset menggunakan parameter berupa variabel bertipe file yang sudah di-assign. Reset akan membaca file sesuai dengan parameter kedua dari assign.
Selanjutnya, kita akan mencoba membuat satu kode program lagi yang digunakan untuk menulis dan membaca file. Kita juga akan menggunakan tipe data file sebagai parameter. Program yang dihasilkan kode program di bawah ini menghasilkan file yang namanya sesuai dengan nama yang masukkan pengguna untuk menyimpan sekumpulan data. Berikutnya, program membuka dan memperhitungkan data yang ada.
program Tambah_data_file;
uses crt;
type
fileku = file of string;
var
tfile: fileku;
filename: string;
procedure writedata(var f: fileku);
var
data: string;
begin
rewrite(f, sizeof(data));
writeln('Masukkan tulisan anda: ');
readln(data);
write(f, data);
close(f);
end;
procedure hitung_rata_rata(var x: fileku);
var
d: string;
begin
reset(x);
read(x, d);
close(x);
writeln('Tulisan yang tersimpan : ', d);
end;
begin
clrscr;
writeln('Masukkan nama file: ');
readln(filename);
assign(tfile, filename);
writedata(tfile);
hitung_rata_rata(tfile);
end.
Saat kode program di atas dieksekusi hasilnya bisa dilihat di dalam file dengan nama sesuai isi variabel "filename".
Menambahkan Text ke akhir sebuah File
Untuk menambahkan text setelah akhir sebuah file tanpa mengubah isinya, kita menggunakan prosedur append. append hanya bisa digunakan pada file dengan jenis text. Perhatikan program berikut ini.
program Lanjutkanfile;
var
fileku: text;
info: string;
begin
assign(fileku, 'contact.txt');
append(fileku);
writeln('Detail');
writeln('codelogi.com');
close(fileku);
ayo baca dari file ini.
assign(fileku, 'contact.txt');
reset(fileku);
while not eof(fileku) do
begin
readln(fileku, info);
writeln(info);
end;
close(myfile);
end.
Compile dan jalankan untuk melihat hasilnya!
Jangan lupa cek juga file yang dihasilkan!