使用Delphi內建函式讀寫INI檔案

2021-05-05 00:11:37 字數 3263 閱讀 9767

利用windows

api函式writeprivateprofilestring 和getprivateprofilestring可對.ini檔案進行讀寫操作。其實,對.ini檔案的讀寫完全可以利用delphi的內建函式來實現。下面就介紹一些對.ini檔案讀寫時相關的類及其屬性方法。

1、tinifile物件

以delphi中,定義了乙個tinifile物件,將.ini檔案封裝在其中,並提供一些方法,專門用來對ini檔案進行讀寫操作。如果在程式中要用到tinifile類或其方法屬性,就必須在程式單元的uses語句中手工加入對inifiles單元的引用。

2、create方法

該方法用來建立乙個處理ini檔案的tinifile型別例項。

方法宣告:constructor create(const filename:string);

引數說明:filename指明待建立的ini檔案的檔名;

注釋:在使用tinifile物件之前,必須先用此方法建立乙個ini檔案的例項。filename中可以包含路徑名,預設時為windows所在目錄(一般就是c:/windows,對於windows nt來說,則一般是c:/winnt)。用create方法建立的例項,在使用完之後,呼叫free方法釋放記憶體。

3、readsection方法

該方法從ini檔案中讀出指定段的所有子鍵名,並存入strings引數指定的字串列表物件中。

方法宣告:procedure readsection(const section:string; strings:tstrings);

引數說明:section指明要讀取段的段名;

strings指明存放子鍵名的字串列表;

注釋:readsection方法僅讀入指定段的所有子鍵名,但不讀入子鍵的值。

4、readsections方法

該方法從ini檔案中讀取所有段名,並存入strings引數指定的字元中列表中。

方法宣告:procedure readsections(strings:tstrings);

引數說明:strings引數指明存放段名的字串列表;

注釋:readsections方法將ini檔案中所有段的段名讀出,存入一指定的字串列表中,此字串列表可以直接使用某個列表框的items屬性。

5、readsectionvalues方法

該方法從ini檔案中讀入指定段的所有子鍵名及其鍵值,並存入strings引數指定的字串列表中。

方法宣告:procedure readsectionvalues(const section:string; strings:tstrings);

引數說明:section指明要讀取段的段名;

strings指明存放段名的字串列表;

注釋:readsectionvalues方法與readsection方法的區別在於後者僅讀入子鍵名,面前者除了讀取子鍵名之外,還讀取該子鍵對應的鍵值。讀入的子鍵名及鍵值在字串列表中的存放方法與在檔案中的顯示方法一致,即"key=value"形式。

6、erasesection方法

該方法刪除ini檔案中指定的乙個整段。

方法宣告:procedure erasesection(const section:string);

引數說明:section指明待刪除段的段名;

注釋:erasesection方法不僅刪除指定段的段名,面且同時將該段的所有子鍵及鍵值刪除。

7、deletekey方法

該方法刪除指定段中的某個指定的子鍵。

方法宣告:procedure deletekey(const section,key:string);

引數說明:section指明待刪除子鍵據段的段名;

key指明待刪除子鍵的鍵名;

注釋:deletekey方法刪除整個子鍵(包括鍵名和鍵值),也就是刪除該子鍵所在的一行。

8、readbool方法

該方法讀取指定段的某個子鍵的布林值。

方法宣告:function readbool(const section,key:string;default:boolean):boolean;

引數說明:section指明待讀子鍵所在段的段名;

key指明待讀子鍵的鍵名;

default引數指明預設時的返回值。

注釋:readbool方法用於讀取乙個子鍵的布林型值,當鍵值為"1"時,返回true,鍵值為"0"時,返回false.

9、writebool方法

該方法向指定段的某個子鍵寫入布林值。

方法宣告:procedure writebool(const section, key:string; value:boolean);

引數說明:senction指明待寫入子鍵所在段的段名;

key引數指明待寫入值的子鍵鍵名;

value指明待寫入的布林值;

注釋:writebool 方法用於寫入乙個子鍵的布林值,當value為"true"時,寫入"1"。value為"flase"時,寫入"0"。若在寫入時,指定的段或鍵名不存在,則自動建立該段和鍵名。

10、readinteger方法

該方法讀取指定段的某個子鍵的整型值。

方法宣告:function readinteger(const section,key:string; default:longint):longint;

注釋:此方法與readbool方法類似,只是變數型別不同。

11、writeinteger方法

該方法向指寫段的某個子鍵寫放整型值。

方法宣告:procedure writeinteger(const section,key:string; value:longint);

注釋:此方法與writebool方法類似,只是變數灰型不同。

12、readstring方法

該方法讀取指定段的某個子鍵的字串型 值。

方法宣告:function readstring(const section,key:string; default:string):string;

注釋;此方法與readbool方法類似,只是變數型別不同。

13、writestring方法

該方法向指寫段的某個子鍵寫入整型值。

方法宣告:procedure writestring(const section,key:string; value:string);

注釋:此方法與writebool方法類似,只是變數型別不同。

14、filename屬性

該屬性指明被封裝在tinifile物件中的ini檔案的檔名。

屬性宣告:property filename:string;

注釋:filename屬性是乙個執行時的唯讀屬性。

Delphi的內建函式操作INI檔案

利用windows api函式writeprivateprofilestring 和getprivateprofilestring可對.ini檔案進行讀寫操作。其實,對.ini檔案的讀寫完全可以利用delphi的內建函式來實 現。下面就介紹一些對.ini檔案讀寫時相關的類及其屬性方法。1 tinif...

delphi 部分函式使用

function uppercase const s string string 說明 用於將 s 字串中的所有小寫字母轉化為大寫字母 其他字元不變 varsss string sss w 我的asdgh showmessage string.uppercase sss 結果 w 我的asdgh f...

python內建函式使用 python內建函式使用

eval函式執行python表示式,有返回值 eval 1 2 3 4 5 exec函式執行的是python語句,沒有返回值 exec print 123 將字串型別的 編碼.物件能夠通過exec語句來執行或者eval 進行求值,c只是編譯,不執行 code for i in range 10 pr...