现在的位置: 首页 > 综合 > 正文

ini 文件操作记要(2): 使用 TMemIniFile

2011年05月24日 ⁄ 综合 ⁄ 共 1480字 ⁄ 字号 评论关闭
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    procedure FormCreate(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

uses
  IniFiles;
var
  ini: TMemIniFile;

procedure TForm1.FormCreate(Sender: TObject);
begin
  ini := TMemIniFile.Create('c:\temp\test.ini');
end;

//写入
procedure TForm1.Button1Click(Sender: TObject);
begin
  ini.WriteString('AAA','A1','AAA-String');

//其他也都和 IniFile 一样使用
//  ini.WriteInteger();
//  ini.WriteBool();
//  ini.WriteDate();
//  ini.WriteTime();
//  ini.WriteDateTime();
//  ini.WriteFloat();
//  ini.WriteBinaryStream();

  //ini.UpdateFile;  //因为 TMemIniFile 是内存操作, 这样才能保存到文件
end;

//读出及其他
procedure TForm1.Button2Click(Sender: TObject);
var
  s: string;
begin
  s := ini.ReadString('AAA','A1','默认值');
  ShowMessage(s);  //AAA-String

//其他读入命令也都和 IniFile 一样使用
//  ini.ReadInteger();
//  ini.ReadBool();
//  ini.ReadDate();
//  ini.ReadTime();
//  ini.ReadDateTime();
//  ini.ReadFloat();
//  ini.ReadBinaryStream();

//还有四个常用方法也是和 IniFile 一样的
//ini.DeleteKey();
//ini.EraseSection();
//ini.ReadSection();
//ini.ReadSections();

//另外有三个 IniFile 中没有的方法也容易使用
//ini.GetStrings(List: TStrings);
//ini.SetStrings(List: TStrings);
//ini.Rename(const FileName: string; Reload: Boolean);
//其中 Rename 中的第二个 Boolean 参数如果为 True 将会刷新读入
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
  ini.Free;
end;

end.

抱歉!评论已关闭.