发新话题
打印

操作INI文件

操作INI文件

6.5.2操作INI文件
在比较旧的Windows版本中,经常将一些配置信息保存在.INI文件中。随着Windows版本
的升高,建议将这些配置文件保存在注册表中进行统一管理。
由于.INI文件操作简单,易于阅读,所以在许多地方仍在使用.INI文件。对.INI文件的操作
主要可以通过表6-6中所示的一些WindowsAPI函数来实现。
表6-6中的各函数用法比较简单,如GetPrivateProfileInt函数的原型如下:
UINT
LPCTSTRlpAppName,//节名称字符串
LPCTSTRlpKeyName,//键名称字符串
INTnDefault,//在键名没有找到时默认返回的整型数值
LPCTSTRlpFileName//.INI文件的文件名
);
如果在参数lpFileName中只指定了不包含路径名的文件名,则默认的.INI文件保存在
Windows目录中。
146基本第二部分Delphi编程的核心技能
下载
表6-6操作.INI文件的常用函数
函数作用
GetPrivateProfileInt从.INI文件中取得指定节指定键名的整型数信息
GetPrivateProfileSection从.INI文件中取得指定节的信息
GetPrivateProfileSectionNames从.INI文件中取得所有节的名称
GetPrivateProfileString从.INI文件中取得指定节指定键名的字符串信息
GetPrivateProfileStruct从.INI文件中取得指定节指定键名的结构数据信息
WritePrivateProfileSection往.INI文件中写入指定节指定键名的整型数信息
WritePrivateProfileString往.INI文件中写入指定节指定键名的字符串信息
WritePrivateProfileStruct往.INI文件中写入指定节指定键名的结构数据信息
例程S6_6该例程(运行结果界面如图6-6所示)中有两个Label组件和两个Edit组件。其
中一组Label组件和Edit组件用来描述一个人的姓名信息,另
一组用来描述年龄信息。在窗体创建的时候,从.INI文件中
读取姓名和年龄的信息到两个Edit组件中。在窗体关闭前,
将两个Edit组件中的信息保存到.INI文件中去。
具体实现过程如下:
1)通过菜单File|NewApplication创建一个新的工程。
2)参考图6-6在窗体Form1中添加相应的Label组件、Edit组件,根据需要设置相应的属性。
3)添加窗体Form1的OnCreate事件和OnDestroy事件的处理过程如下:
procedureTForm1.Form1Create(Sender:TObject);
var
Age:Integer;
Name:pchar;
begin
//从.INI文件中获取年龄信息
Age:=GetPrivateProfileInt(
'PersonalInfo',//[]中节的名称
'Age',//=前的键名
0,//如果没有找到整数时,返回0
'c:\Samples\S6_6\S6_6.ini'//.INI文件名
);
Edit2.Text:=IntToStr(Age);//显示年龄
//从.INI文件中获取姓名信息
Name:='';
GetPrivateProfileString(
'PersonalInfo',//[]中节的名称
'Name',//=前的键名
'',//如果没有找到字符串时,返回Nil
Name,//存放取得字符串
100,//取得字符的允许最大长度
'c:\Samples\S6_6\S6_6.ini'//.INI文件名
);
Edit1.Text:=Name;//显示姓名
end;
第6章章文件、目录和驱动器章名147
下载
图6-6例程S6_6运行结果界面
procedureTForm1.Form1Destroy(Sender:TObject);
var
AgeStr:pChar;
Name:pChar;
begin
//向.INI文件写入年龄
AgeStr:=pChar('Age='+Edit2.Text);
WritePrivateProfileSection(
'PersonalInfo',
AgeStr,
'c:\Samples\S6_6\S6_6.ini'
);
//向.INI文件写入姓名
Name:=pChar(Edit1.Text);
WritePrivateProfileString(
'PersonalInfo',
'Name',
Name,
'c:\Samples\S6_6\S6_6.ini'
);
end;
4)编译、链接和运行程序,测试效果。

TOP

发新话题