• ini 文件操作记要: 使用 TMemIniFile《转》


    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.
  • 相关阅读:
    MQ消息堆积处理
    mysql覆盖索引与回表
    MYSQL-间隙锁详解
    MySQL InnoDB(Spring)并发事务导致的死锁及解决方案
    new String()创建了几个对象
    公平锁和非公平锁
    一个java对象最小占用内存空间
    千万级甚至亿级数据量排序
    @media (prefers-reduced-motion)
    babel 编译后导致_typeof无限递归调用 Maximum call stack size exceeded
  • 原文地址:https://www.cnblogs.com/LceMeaning/p/2853047.html
Copyright © 2020-2023  润新知