Delphi TIniFile 類 操作ini檔案

2021-08-30 09:31:04 字數 2012 閱讀 3101

一、ini檔案的結構:

;注釋[小節名]

關鍵字=值

...---- ini檔案允許有多個小節,每個小節又允許有多個關鍵字, 「=」後面是該關鍵字的值。

---- 值的型別有三種:字串、整型數值和布林值。其中字串存貯在ini檔案中時沒有引號,布林真值用1表示,布林假值用0表示。

---- 注釋以分號「;」開頭。

二、定義

---- 1、在inte***ce的uses節增加inifiles;

---- 2、在var變數定義部分增加一行:

myinifile:tinifile;

---- 然後,就可以對變數myinifile進行建立、開啟、讀取、寫入等操作了。

三、開啟ini檔案

myinifile:=tinifile.create('program.ini');

--- 上面這一行語句將會為變數myinifile與具體的檔案 program.ini建立聯絡,然後,就可以通過變數myinifile,來讀寫program.ini檔案中的關鍵字的值了。

---- 值得注意的是,如果括號中的檔名沒有指明路徑的話,那麼這個program.ini檔案會儲存在windows目錄中,把program.ini檔案儲存在應用程式當前目錄中的方法是:為其指定完整的路徑及檔名。下面的兩條語句可以完成這個功能:

filename:=extractfilepath(paramstr(0))+'program.ini';

myinifile:=tinifile.create(filename);

四、讀取關鍵字的值

--- 針對ini檔案支援的字串、整型數值、布林值三種資料型別,tinifiles類提供了三種不同的物件方法來讀取ini檔案中關鍵字的值。

--- 假設已定義變數vs、vi、vb分別為string、 integer、boolean型別。

vs:=myinifile.readstring('小節名','關鍵字',預設值);

vi:=myinifile.readinteger('小節名','關鍵字',預設值);

vb:=myinifile.readbool('小節名','關鍵字',預設值);

--- 其中預設值為該ini檔案不存在該關鍵字時返回的預設值。

五、寫入ini檔案

---- 同樣的,tinifile類也提供了三種不同的物件方法,向ini檔案寫入字串、整型數及布林型別的關鍵字。

myinifile.writestring('小節名','關鍵字',變數或字串值);

myinifile.writeinteger('小節名','關鍵字',變數或整型數值);

myinifile.writebool('小節名','關鍵字',變數或true或false);

---- 當這個ini檔案不存在時,上面的語句還會自動建立該ini檔案。

六、刪除關鍵字

---- 除了可用寫入方法增加乙個關鍵字,tinifile類還提供了乙個刪除關鍵字的物件方法:

myinifile.deletekey('小節名','關鍵字');

七、小節操作

--- 增加乙個小節可用寫入的方法來完成,刪除乙個小節可用下面的物件方法:

myinifile.erasesection('小節名');

----判斷小節是否存在

sectionexists('小節名')

--- 另外tinifile類還提供了三種物件方法來對小節進行操作:

--- myinifile.readsection('小節名',tstrings變數);可將指定小節中的所有關鍵字名讀取至乙個字串列表變數中;

--- myinifile.readsections(tstrings變數);可將ini檔案中所有小節名讀取至乙個字串列表變數中去。

---- myinifile.readsectionvalues('小節名',tstrings變數);可將ini檔案中指定小節的所有行(包括關鍵字、=、值)讀取至乙個字串列表變數中去。

八、釋放

在適當的位置用下面的語句釋放myinifile:

myinifile.distory;

類值類與類指標類

類值類 行為像值的 class a a const a a ps new string a.ps i a.i 每個類物件有自己的乙份資源拷貝 a operator const a rhs a private string ps int i 一種優化拷貝賦值運算子的方法 copy and swap c...

巢狀類 匿名類 密封類

巢狀類 在c 中可以將乙個類定義在另乙個類的內部,外部的叫外部類,內部的巢狀類 namespace 27 set public void hello 巢狀類 public class web webname,weburl class program 匿名類 如果某個類的例項物件只會使用到一次,可以使...

點類,圓類,圓柱類

print?copyright c 2012,煙台大學計算機學院 all rights reserved.檔名稱 text.cpp 作 者 胡穎 完成日期 2013年5月20日 版 本 號 v1.0 輸入描述 無 問題描述 1 先建立乙個point 點 類,包含資料成員x,y 座標點 2 以poin...