作者:admin 来源: 日期:2020/1/1 2:28:39 人气: 标签:
尽管使用 TIniFile 类很方便, 但我觉得还是用系统 API 操作更顺手, 读写各只需要一行代码, 也不用 uses IniFiles.
本例效果图:

代码文件:unit Unit1;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;
type TForm1 = class(TForm) Memo1: TMemo; Button1: TButton; Button2: TButton; Button3: TButton; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button3Click(Sender: TObject); end;
var Form1: TForm1;
implementation
{$R *.dfm}
const FilePath = 'C:\Temp\My.ini';
//写入 Ini 文件, 如果指定文件路径不存在会自动建立procedure TForm1.Button1Click(Sender: TObject);begin WritePrivateProfileString('段1', 'Key1', '值1', PChar(FilePath)); WritePrivateProfileString('段1', 'Key2', '值2', PChar(FilePath));
WritePrivateProfileString('段2', 'Key1', '值1', PChar(FilePath));end;
//把写入结果显示在 Memo 看看procedure TForm1.Button2Click(Sender: TObject);begin if not FileExists(FilePath) then Exit; Memo1.Lines.LoadFromFile(FilePath);end;
//读取测试procedure TForm1.Button3Click(Sender: TObject);var buf: array[Byte] of Char; {准备接受缓冲区}begin GetPrivateProfileString('段1', 'Key2', '默认值', buf, Length(buf), PChar(FilePath)); ShowMessage(buf);end;
end.
窗体文件:object Form1: TForm1 Left = 0 Top = 0 Caption = 'Form1' ClientHeight = 148 ClientWidth = 237 Color = clBtnFace Font.Charset = DEFAULT_CHARSET Font.Color = clWindowText Font.Height = -11 Font.Name = 'Tahoma' Font.Style = [] OldCreateOrder = False Position = poDesktopCenter PixelsPerInch = 96 TextHeight = 13 object Button1: TButton Left = 127 Top = 24 Width = 98 Height = 25 Caption = #20889#20837' Ini '#25991#20214 TabOrder = 0 OnClick = Button1Click end object Button2: TButton Left = 127 Top = 65 Width = 98 Height = 25 Caption = #30475#30475#20889#20837#32467#26524 TabOrder = 1 OnClick = Button2Click end object Button3: TButton Left = 127 Top = 104 Width = 98 Height = 25 Caption = #35835#21462' Ini '#25991#20214 TabOrder = 2 OnClick = Button3Click end object Memo1: TMemo Left = 0 Top = 0 Width = 121 Height = 148 Align = alLeft Lines.Strings = ( 'Memo1') TabOrder = 3 ExplicitHeight = 183 endend
相关函数还有:WritePrivateProfileSection {}WriteProfileSection {}WriteProfileString {}GetPrivateProfileInt {}GetPrivateProfileSection {}GetPrivateProfileStruct {}GetProfileInt {}GetProfileSection {}GetProfileString {}
来源:https://www.cnblogs.com/del/archive/2008/06/02/1212120.html