File INI memainkan peran yang sangat penting dalam konfigurasi sistem serta penyimpanan dan pengaturan parameter aplikasi. Oleh karena itu, keluarga pemrograman visual, seperti VB, VC, VFP, Delphi, dll., menyediakan metode untuk membaca dan menulis file INI dioperasikan dalam file Delphi, yang paling ringkas, hal ini karena Delphi menyediakan kelas TInifile, yang memungkinkan kita memproses file INI dengan sangat fleksibel . Struktur file INI [Nama bagian] file ini kata kunci 1 = nilai 1 Kata kunci 2 = nilai 2 File INI mengizinkan beberapa bagian, dan setiap bagian mengizinkan beberapa kata kunci. Ada tiga jenis nilai: string, nilai integer, dan nilai Boolean. String disimpan dalam file INI tanpa tanda kutip, nilai Boolean sebenarnya diwakili oleh 1, dan nilai Boolean salah diwakili oleh 0.
2. Definisi
1. Tambahkan IniFiles di bagian Penggunaan Antarmuka;
2. Tambahkan baris di bagian definisi variabel Var: myinifile:Tinifile;
Mendefinisikan sebuah instance dari kelas. Kemudian, Anda dapat membuat, membuka, membaca, menulis, dan operasi lainnya pada variabel myinifile.
3. Buka file INI
myinifile:=Tinifile.create(PRogram.ini);
Baris pernyataan di atas akan membuat hubungan antara variabel myinifile dan file spesifik program.ini. Kemudian, nilai kata kunci dalam file program.ini dapat dibaca dan ditulis melalui variabel myinifile. Perlu dicatat bahwa jika nama file dalam tanda kurung tidak menentukan jalurnya, maka file Program.ini akan disimpan di direktori Windows. Metode untuk menyimpan file Program.ini di direktori aplikasi saat ini adalah dengan menentukan Path lengkap dan nama file. Dua pernyataan berikut dapat menyelesaikan fungsi ini: Filename:=ExtractFilePath(Paramstr(0))+program.ini;myinifile:=Tinifile.Create(filename);
5. Tulis file INI
Demikian pula, kelas TInifile juga menyediakan tiga metode objek berbeda untuk menulis string, bilangan bulat, dan kata kunci tipe Boolean ke file INI.
myinifile.writestring(nama bagian, kata kunci, variabel atau nilai string);
myinifile.writeinteger(nama bagian, kata kunci, variabel atau nilai integer);
myinifile.writebool(nama bagian, kata kunci, variabel atau Benar atau Salah);
Jika file INI tidak ada, pernyataan di atas secara otomatis akan membuat file INI.
6. Hapus kata kunci
Selain menambahkan kata kunci menggunakan metode write, kelas Tinifile juga menyediakan metode objek untuk menghapus kata kunci:
myinifile.DeleteKey(nama bagian,kata kunci);
7. Operasi bagian
Menambahkan bagian dapat dilakukan dengan metode tulis, dan menghapus bagian dapat dilakukan dengan metode objek berikut:
myinifile.EraseSection(nama bagian);
Selain itu, kelas Tinifile juga menyediakan tiga metode objek untuk beroperasi pada bagian: myinifile.readsection (nama bagian, variabel TStrings); semua nama kunci di bagian yang ditentukan dapat dibaca ke dalam variabel daftar string; ; dapat membaca semua nama bagian dalam file INI menjadi variabel daftar string. myinifile.readsectionvalues (nama bagian, variabel TStrings); dapat membaca semua baris (termasuk kata kunci, =, nilai) dari bagian yang ditentukan dalam file INI ke dalam variabel daftar string.
8. Rilis
Lepaskan myinifile di lokasi yang sesuai dengan pernyataan berikut:
myinifile.distory;
Berikut adalah contoh spesifiknya. Kode sumbernya adalah sebagai berikut. File myini.ini telah dibuat, dengan bagian bernama newini dan tiga kata kunci: "nama pengguna", "waktu berjalan yang telah berlalu" dan "apakah itu pengguna resmi". Untuk efek berjalan, Anda dapat mengisi "nama pengguna" di edit1; edit2 menampilkan waktu, dan nilainya tidak dapat diubah; kotak centang1 menghemat waktu dan "nama pengguna" dengan mencentangnya di file myini.ini aplikasi dibuka kembali, Jika waktu yang dihemat dan "nama pengguna" yang diisi diubah pada file myini.ini, efeknya akan sama seperti ketika diubah saat program sedang berjalan.
unit Unit1;antarmukamenggunakan Windows, Pesan, SysUtils, Varian, Kelas, Grafik, Kontrol, Formulir, Dialog,inifiles, StdCtrls, ExtCtrls; {call inifiles class}type TForm1 = class(TForm) Label1: TLabel2: TLabel Label3: Label; Sunting1: TEdit; Sunting2: TEdit; Kotak Centang1: TCheckBox; prosedur FormCreate(Pengirim: TObject); prosedur FormDestroy(Pengirim: TObject); procedure Timer1Timer(Pengirim: TObject); private { Deklarasi pribadi } public { Deklarasi publik } end;var Form1: TForm1;implementationvarmyinifile:TInifile;{ Tentukan instance prosedur class}{$R *.dfm} TForm1.FormCreate(Pengirim: TObject);varfilename:string;begin{Dua baris berikut ditulis dalam bentuk pembuatan file ini di bawah path aplikasi}filename:=ExtractFilePath(paramstr(0))+'myini.ini';myinifile:= TInifile.Buat( nama file);edit1.Teks:=myinifile.ReadString(' newini','Nama pengguna','Hu Changhao');edit2.text:=inttostr(myinifile.readinteger('newini','Elapsed running time',0));checkbox1.Checked:=myinifile.readbool('newini ' ,'Apakah ini pengguna resmi',False);{newini adalah nama bagian, kolom tengah adalah nama kata kunci, dan kolom ketiga adalah nilai default. Ketika myini.ini tidak ada, pernyataan di atas secara otomatis membuat file ini. Tanda kutip pada baris di atas adalah tanda kutip tunggal}end;procedure TForm1.FormDestroy(Sender: TObject);begin myinifile.writestring('newini','nama pengguna',edit1.Text);myinifile.writeinteger('newini','Waktu berjalan yang telah berlalu',strtoint(edit2.text));myinifile.writebool('newini','apakah Pengguna resmi',kotak centang1.Diperiksa);myinifile.Destroy;akhir;prosedur TForm1.Timer1Timer(Pengirim: TObject);mulai edit2.Teks:=inttostr(strtoint(edit2.teks)+1);akhir;akhir.
berkas ini