Delphi ini文件读写

参考:http://www.cnblogs.com/zhangzhifeng/archive/2011/12/01/2270267.html

一、ini文件的结构

;这是关于 ini 文件的注释
[节点]
关键字=值
...

  ini文件允许有多个节点,每个节点有允许有多个关键字,“=”后面是该关键字的值(类型有三种:字符串、整型数值和布尔值。其中字符串存储在 ini 文件中时没有引号,布尔真值用 1 表示,布尔假值用 0 表示)。注释以分号 “;” 开头。

二、ini 文件的操作

1.在interface 的 uses 节增加 IniFiles

2.在var 变量定义部分增加一行:

inifile: Tinifile;

  然后,就可以对变量 inifile进行创建、打开、读取、写入等操作了。

3.打开 ini 文件:

inifile:= Tinifile.Create('tmp.ini');
//Create的参数是 ini 文件的路径的字符串

  

4.读取关键字的值:

a:= inifile.Readstring('节点', '关键字', 缺省值);  //string类型

b:= inifile.Readinteger('节点', '关键字', 缺省值);  //integer类型

c:= inifile.Readbool('节点', '关键字', 缺省值);  //boolean类型

  其中 [缺省值] 为该 ini 文件不存在该关键字时返回的缺省值

5.写入 ini 文件:

infile.writestring('节点', '关键字', 变量或字符串值);    //写入 string类型

infile.writestring('节点', '关键字', 变量或整型值);    //写入 integer类型

infile.writestring('节点', '关键字', 变量或True或False);    //写入 Boolean类型

  当这个 ini 文件的节点不存在时,上面的语句还会自动创建该 ini 文件

6.删除关键字:

infile.DeleteKey('节点', '关键字');  //删除关键字

inifile.EraseSection('节点');  //删除节点

  

7.节点操作:

inifile.readsection('节点', TStrings变量);  //可将指定节点的所有关键字名读取至一个字符串列表变量中

inifile.readsections(TStrings变量);  //可将 ini 文件中所有节点读取至一个字符串列表变量中去。

inifile.readsectionvalues('节点', TStrings变量);  //可将 ini 文件中指定节点的所有行(包括关键字、 = 、 值)读取至一个字符串变量中去

  

8.释放:  

inifile.free;

  

三、例子

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, IniFiles, StdCtrls; type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure FormDestroy(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
Inif: TIniFile;
end; var
Form1: TForm1; implementation {$R *.dfm} procedure TForm1.FormCreate(Sender: TObject);
begin
Inif:= TIniFile.Create(ExtractFilePath(Paramstr(0))+'T.ini');
end; procedure TForm1.Button1Click(Sender: TObject);
begin
Inif.WriteString('T','t1','info'); //修改
end; procedure TForm1.Button2Click(Sender: TObject);
begin
Inif.DeleteKey('T','t2'); //删除
end; procedure TForm1.FormDestroy(Sender: TObject);
begin
Inif.Free;
end; end.

  

上一篇:【IOS】Mac和IOS开发资源汇总


下一篇:mac uninstall node ,npm from official