Bekerja dengan ini file pada Delphi

Ini file dikenali oleh sistem operasi sebagai sebuah file konfigurasi. File tersebut biasa digunakan didalam sebuah program apabila terdapat variabel yang bisa berganti sesuai dengan keinginan dan konfigurasi komputer user. Contohnya jika kita membuat sebuah aplikasi yang berhubungan dengan database, tentu akan sangat menguntungkan jika kita meletakkan konfigurasi untuk username, password,host, port dari database yang akan digunakan di dalam sebuah file konfigurasi, karena tidak memerlukan hard coding ketika kita memindahkan aplikasi tersebut ke komputer lain yang memiliki konfigurasi database yang berbeda dengan komputer pada saat kita develop aplikasi dan mudah untuk dilakukan perubahan.

Berikut contoh sederhana sebuah file ini berdasarkan ilustrasi diatas.

[database]
username=root
password=root
dbname=delphi
host=localhost
port=3306

Sebelum kita menggunakan fungsi maupun procedure yang berhubungan dengan pemrosesan ini file, ada baiknya kita menambahkan sebuah unit yang bernama IniFiles di dalam uses aplikasi kita. Karena jika ini tidak dilakukan, delphi akan marah2 saat aplikasinya di compile :p . Setelah unit tersebut di tambahkan, langkah berikutnya adalah memberitahukan kepada aplikasi kita file mana yang akan kita proses dengan menggunakan procedure create

Membaca file ini dapat dengan mudah dilakukan dengan memanggil procedure ReadString(const Section:string; const Ident: string; const Value: string);

Source code lengkap untuk membaca file ini yang kita buat diatas (asumsi file tersebut disimpan dengan nama config.ini) :

procedure Tform1.initConnection;
var
ini : TIniFile;
us,ps,dbn,host,path : string;
port : integer;
begin
path := GetCurrentDir;
ini := TIniFile.Create(path+'config.ini');
try
us := ini.ReadString('database','username','');
ps := ini.ReadString('database','password','');
dbn := ini.ReadString('database','dbname','');
host := ini.ReadString('database','host','');
port := ini.ReadInteger('database','port',0);
finally
ini.Free;
end;
end;

cukup sekian, terima kasih 😀

Iklan