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.
Delphi ini文件读写的更多相关文章
- Delphi INI 文件读写
delphi中,配置文件的相关操作. () INI文件的结构: ;这是关于INI文件的注释部分 [节点] 关键字=值 ... INI文件允许有多个节点,每个节点又允许有多个关键字, “=”后面是该关键 ...
- delphi INI文件
INI 文件读写 filecreate('路径加文件名')://创建一个文件. (1) INI文件的结构: ;这是关于INI文件的注释部分 [节点] 关键字=值 ... INI文件允许有多个节点,每个 ...
- [IO] C# INI文件读写类与源码下载 (转载)
/// <summary> /// 类说明:INI文件读写类. /// 编 码 人:苏飞 /// 联系方式:361983679 /// 更新网站:[url]http://www.sufei ...
- QSettings配置读写-win注册表操作-ini文件读写
版权声明:若无来源注明,Techie亮博客文章均为原创. 转载请以链接形式标明本文标题和地址: 本文标题:QSettings配置读写-win注册表操作-ini文件读写 本文地址:http:// ...
- C#对INI文件读写
C#本身没有对INI格式文件的操作类,可以自定义一个IniFile类进行INI文件读写. using System; using System.Collections.Generic; using S ...
- 封装 INI 文件读写函数
delphi读写ini文件实例 //--两个过程,主要实现:窗体关闭的时候,文件保存界面信息:窗体创建的时候,程序读取文件文件保存的信息. //--首先要uses IniFiles(单元) //--窗 ...
- C#实现.ini文件读写操作
1.ini文件是什么? 见百度百科:https://baike.baidu.com/item/ini%E6%96%87%E4%BB%B6/9718973?fr=aladdin 2.C#语 ...
- VC++ 实现INI文件读写操作
转载:https://blog.csdn.net/fan380485838/article/details/73188420 在实际项目开发中,会用ini配置文件,在此总结一下对ini读写操作 一:读 ...
- ini文件读写 保存上次存储内容
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...
随机推荐
- Android解析服务器Json数据实例
Json数据信息如下: { "movies": [ { "movie": "Avengers", "year": 201 ...
- C++关键字:mutable(转)
参考:http://blog.csdn.net/hxz_qlh/article/details/14475573 修饰成员变量,在const成员函数中可修改它,在C++中还从未用过这个关键字.
- 【VBA】批量插入图片
解决如下问题: 需要批量导入图片到Excel 图片放在一个文件夹中 图片有严格的顺序关系,即按照:共通名_编号的方式命名. 图片格式统一,即均为同一格式. 有两种方式可以插入图片到Excel中,其一为 ...
- javascript,检测对象中是否存在某个属性
检测对象中属性的存在与否可以通过几种方法来判断. 1.使用in关键字. 该方法可以判断对象的自有属性和继承来的属性是否存在. var o={x:1}; "x" in o; //tr ...
- c语言数据问题
变量都有作用域,链接属性,和存储类型3个属性,这三个属性决定了变量的作用域和生存期的问题 在c语言中包含4中类型, 整形 浮点型 指针 聚合类型(数组,结构体等) ------------------ ...
- Android Xpose Hook(一)
实验环境: Droid4x模拟器 (目前Android版本4.2.2) Android Studio 1.下载相关工具 XposedInstaller下载 http://repo.xp ...
- svn迁移到git仓库并保留commit历史记录
svn迁移到git仓库并保留commit历史记录 最近在做svn迁移到gitlab,由于之前一直是由svn做版本控制.最简单的方式是将svn的内容export出来,然后添加到gitlab即可.但是,如 ...
- 使用ssh正向连接、反向连接、做socks代理的方法
ssh -L 219.143.16.157:58080:172.21.163.32:8080 用户名@localhost -p 10142 在 219.143.16.157机器执行 将ssh隧 ...
- 在Debian上用Bind 配置DNS服务器
1 什么是DNS 初学者可能不理解DNS到底是什么,干什么用.我是在1998年大学毕业时才听说这个词的.那时我在聊天室碰到潍坊信息港的一个网管,我恬不知耻地说我也是个网管,他说也维护DNS吗?我说,D ...
- 20145213《Java程序设计》第二周学习总结
20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...