zoukankan      html  css  js  c++  java
  • 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.
    

      

  • 相关阅读:
    PHP 截取字符串专题
    PHP获取文件扩展名的三种方法
    PHP万能密码登陆
    js正则表达式 验证手机号,email地址和邮政编码
    图片局部链接实例,方便自己用!
    通用客户端表单验证函数修正版
    C#事件的知识,转载学习
    C# byte及char FileStream 与StreamReader的区别(转)
    .Net下二进制形式的文件(图片)的存储与读取(转载)
    高斯克吕格坐标系中国部分定义(北京五四和西安80)(转,准确性使用性不敢保证)
  • 原文地址:https://www.cnblogs.com/xumenger/p/4451214.html
Copyright © 2011-2022 走看看