delphi讀取ini檔案 (轉)
INI在及應用引數儲存與設定方面,具有很重要的作用,所以視覺化的一族,如VB、VC、VFP、等都提供了讀寫INI檔案的方法,其中Delphi中操作INI檔案,最為簡潔,這是因為Delphi提供了一個TInifile類,使我們可以非常靈活的處理INI檔案:namespace prefix = o ns = "urn:schemas--com::office" />
一.INI檔案的結構
[小節名]/editor/Editor.htm#_ftn1" name=_ftnref1>ini檔案
關鍵字1=值1
關鍵子2=值2
INI檔案允許有多個小節,每個小節又允許有多個關鍵字,“=”後面是該關鍵字的值。
值的型別有三種:字串、整型數值和布林值。其中字串存貯在INI檔案中時沒有引號,布林真值用1表示,布林假值用0表示。
二、定義
1、 在Interface的Uses節增加IniFiles;
2、 在Var變數定義部分增加一行: myinifile:Tinifile;
定義類的一個例項。然後,就可以對變數myinifile進行建立、開啟、讀取、寫入等操作了。
三、開啟INI檔案
myinifile:=Tinifile.create(program.ini);
上面這一行語句將會為變數myinifile與具體的檔案program.ini建立聯絡,然後,就可以透過變數myinifile,來讀寫program.ini檔案中的關鍵字的值了。
值得注意的是,如果括號中的檔名沒有指明路徑的話,那麼這個Program.ini檔案會在目錄中,把Program.ini檔案儲存在應用程式當前目錄中的方法是:為其指定完整的路徑及檔名。下面的兩條語句可以完成這個功能:
Filename:=ExtractFilePath(Paramstr
(0))+program.ini;
myinifile:=Tinifile.Create(filename);
五、寫入INI檔案
同樣的,TInifile類也提供了三種不同的方法,向INI檔案寫入字串、整型數及布林型別的關鍵字。
myinifile.writestring(小節名,關鍵字,變數或字串值);
myinifile.writeinteger(小節名,關鍵字,變數或整型數值);
myinifile.writebool(小節名,關鍵字,變數或True或False);
當這個INI檔案不存在時,上面的語句還會自動建立該INI檔案。
六、刪除關鍵字
除了可用寫入方法增加一個關鍵字,Tinifile類還提供了一個刪除關鍵字的物件方法:
myinifile.DeleteKey(小節名,關鍵字);
七、小節操作
增加一個小節可用寫入的方法來完成,刪除一個小節可用下面的物件方法:
myinifile.EraseSection(小節名);
另外Tinifile類還提供了三種物件方法來對小節進行操作:
myinifile.readsection(小節名,TStrings變數);可將指定小節中的所有關鍵字名讀取至一個字串列表變數中;
myinifile.readsections(TStrings變數);可將INI檔案中所有小節名讀取至一個字串列表變數中去。
myinifile.readsectionvalues(小節名,TStrings變數);可將INI檔案中指定小節的所有行(包括關鍵字、=、值)讀取至一個字串列表變數中去。
八、釋放
在適當的位置用下面的語句釋放myinifile:
myinifile.distory;
下面是具體例子。如下。建立了一個myini.ini檔案,有一個名為newini的小節,有3個關鍵字“名稱”“已執行時間”“是否正式使用者”。執行效果,可以在edit1裡邊填入“使用者名稱稱”;edit2顯示時間,不可以改變數值;checkbox1透過打勾,儲存時間和“使用者名稱稱”進入myini.ini檔案裡邊,重新開啟應用程式時,顯示的時儲存下來的時間和填入的“使用者名稱稱”,如果在myini.ini檔案裡邊修改,效果和在程式執行過程中修改時一樣的。
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs,inifiles, StdCtrls, ExtCtrls;
{inifiles 類}
type
TForm1 = class(TForm)
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Timer1: TTimer;
CheckBox1: TCheckBox;
procedure FormCreate(Sender: T);
procedure FormDestroy(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
var
myinifile:TInifile;
{定義一個類的例項}
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
var
filename:string;
begin
{下面兩行的書寫形式,在應用程式的路徑下建立ini檔案}
filename:=ExtractFilePath(paramstr(0))+'myini.ini';
myinifile:=TInifile.Create(filename);
edit1.Text:=myinifile.ReadString('newini','使用者名稱稱','胡長浩');
edit2.text:=inttostr(myinifile.readinteger
('newini','已執行時間',0));
checkbox1.Checked:=myinifile.reaool
('newini','是否正式使用者',False);
{newini是小節名字,中間欄位是關鍵字的名字,第三個欄位是預設值。當myini.ini不存在時,上面的語句自動建立這個檔案,上邊幾行裡的引號是單引號}
end;
procedure TForm1.FormDestroy(Sender: TObject);
begin
myinifile.writestring('newini','使用者名稱稱',edit1.Text);
myinifile.writeinteger('newini','已執行時間',
strtoint(edit2.text));
myinifile.writebool('newini','是否正式使用者',
checkbox1.Checked);
myinifile.Destroy;
end;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
edit2.Text:=inttostr(strtoint(edit2.text)+1);
end;
end.
檔案
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752019/viewspace-963685/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 建立與讀取.ini檔案
- go 讀取.ini配置檔案Go
- C#讀取ini配置檔案C#
- VB讀寫ini檔案 (轉)
- 透過python讀取ini配置檔案Python
- Linux下用C讀取INI配置檔案Linux
- 獲取檔案路徑(Delphi )----轉貼
- Python讀取修改ini配置檔案[ConfigParser]Python
- 讀寫INI檔案的四個函式 (轉)函式
- java 讀寫 ini 配置檔案Java
- c#讀寫ini檔案C#
- 【自動化測試】Python 讀取 .ini 格式檔案Python
- VB.NET 讀寫ini檔案
- 使用C#讀寫ini檔案C#
- 讀取DXF格式檔案 (轉)
- C#關於讀寫INI檔案C#
- C# winform中讀寫ini檔案C#ORM
- linux/windows 讀寫ini配置檔案LinuxWindows
- C#中讀寫INI配置檔案C#
- pyinstaller 打包後讀取 ini 配置檔案路徑錯誤,怎麼定位配置檔案
- ini檔案解析c庫(iniparser)【轉】
- API讀取寫入 ini檔案內容的方法函式詳解API函式
- 使用IniEditor讀寫INI型別配置檔案型別
- Python的configparser模組讀取.ini檔案內容並輸出Python
- 【轉】PHP如何快速讀取大檔案PHP
- UnixWare 7.1.3直接讀取*.iso檔案(轉)
- Delphi程式設計:用流來讀取TXT檔案中的資料程式設計
- Delphi中用於讀寫(I/O)的三種檔案型別 (轉)型別
- java操作ini檔案Java
- Java 讀取檔案Java
- tiff檔案讀取
- 任意檔案讀取
- Delphi編碼標準——檔案命名 (轉)
- NPM酷庫047:ini,解析INI配置檔案NPM
- python讀取檔案——python讀取和儲存mat檔案Python
- viper 讀取配置檔案
- go配置檔案讀取Go
- iOS讀取.csv檔案iOS