RSS订阅 | 匿名投稿
您的位置:网站首页 > 文件 > 正文

delphi配置文件INI

作者:admin 来源: 日期:2015/4/27 20:31:48 人气: 标签:

delphi配置文件INI

INI文件是一个带格式的文本文件,windows系统的配置文件大多采用这种格式,由于Microsoft的带动作用,许多应用软件的配置文件也大多采用这种格式,其实这种格式非常简单,他是这样定义的:

[区域1]
Name1=Value1
Name2=Value2
…….
[区域2]
Name1=Value1
Name2=Value2

它采用的是文本文件格式,是一个非常简单的格式,任何编辑器都能打开它,易于阅读与修改。

这么简单的文件格式,我们用一般的文件打开方式都可以打开它,然后读取其中的各项内容。但Object pascal还是为我们提供了一个TIniFile对象,它使我们读取INI格式的文件更简单了,只需要直接使用该对象的方法和属性就可以了。这里简单介绍一下读与写INI文件字符串的两个方法,至于其他方法,与这两个类似。


function ReadString(const Section,Ident,Default:string):string;override;
该函数的参数定义如下。


Section:区域
Ident:NAME
Default:缺省值
返回值为该区域内的NAME=value中的valueE值,如果没有对应的区域、或没有对就的NAME或NAME没有分配值,都返回缺省值。

procedure WriteString(const Section,Ident,Value:string);override;
该函数的参数定义如下:

Section:区域
Ident:NAME
Value:字符串值
包含inifiles单元

要使用TIniFile对象,需要包含inifiles单元。

uses
IniFiles;
写入ini文件

有了这些基础知识,我们就可以写一个自己的ini文件了。本例用按钮Button1实现该功能,代码如下:


procedure TForm1.Button1Click(Sender: TObject);
var
  ini:TIniFile;
begin
  ini:=TIniFile.Create('my.ini');
  ini.WriteString('sec1','book','red and black');
  ini.WriteInteger('sec2','number',12);
  ini.WriteBool('sec3','bool',True);
  ini.WriteBool('sec3','bool1',False);
  ini.Free;
end;
如果ini文件名没有指定目录,它的默认目录为系统盘下的windows目录。如果不想让他保在windows目录下,一定要将目录的路径血泉。

上面代码会在系统盘下的windows目录中生成my.ini,这样一个文件,文件内容如下:


[sec1]
book=red and black
[sec2]
number=12
[sec3]
bool=1
bool1=0
获取本文件路径

如果想在本程序的目录中产生可以用获取本文件路径的代码:


ExtractFilePath(ParamStr(0))+'myini.ini';
读取ini文件

我们用Button2来读取my.ini中的内容,并将book的结果显示在Edit控件中。


procedure TForm1.Button2Click(Sender: TObject);
var
  ini:TIniFile;
begin
  ini:=TIniFile.Create('my.ini');
  Edit1.Text:=ini.ReadString('sec1','book','1234');
  ini.Free;
end;
这个ini文件格式在我们的应用程序中是经常用到的,应用程序是一大堆配置的组合,同时还应该有让用户设置配置的模块。如果你的应用程序没有配置内容。形式单调,功能单一,我想这样的软件未必是一个成功的软件。

但不是所有的应用程序的配置内容都要采用这种ini文件格式配置。比如,为了保密,可以隐藏自己的配置文件内容,用其他的文件格式或注册表保存配置,还可以保存在数据库中。

读完这篇文章后,您心情如何?
0
0
0
0
0
0
0
0
本文网址:
下一篇:没有资料