delphi如何读取ini文件或txt文件到edit控件?
我想用delphi来写程序,ini或txt格式如下:[配置设置]Work11=79038692Work12=90760902我想把Work11的内容显示到edit1中,把...
我想用delphi来写程序,ini或txt格式如下:
[配置设置]
Work11=79038692
Work12=90760902
我想把Work11的内容显示到edit1中,把Work12显示到edit2中。
文件名为config.ini,文件路径不要固定的,和程序一起运行,ini文件和程序在一个文件夹就可以运行。
哪位大侠帮着写写,重谢! 展开
[配置设置]
Work11=79038692
Work12=90760902
我想把Work11的内容显示到edit1中,把Work12显示到edit2中。
文件名为config.ini,文件路径不要固定的,和程序一起运行,ini文件和程序在一个文件夹就可以运行。
哪位大侠帮着写写,重谢! 展开
4个回答
展开全部
可以参考以下代码段
procedure TForm1.FormCreate(Sender: TObject);
begin
// 使用TIniFile类的Create成员函数建立TIniFile对
//象,该对象用来读写当前目录中的sample.ini文件,
IniFile := TIniFile.Create('..\sample.ini');
//读取节点
cobSection.Clear;
IniFile.ReadSections(cobSection.Items);
cobSection.ItemIndex := 0;
cobSectionChange(sender);
btnSave.Enabled := false;
end;
procedure TForm1.cobSectionChange(Sender: TObject);
begin
cobIni.Clear;
// 将cobSection中所选择节中对应的各个
//变量及对应的值送入cobIni
IniFile.ReadSection(cobSection.Text, cobIni.Items);
cobIni.ItemIndex := 0;
cobIniChange(Sender);
end;
procedure TForm1.cobIniChange(Sender: TObject);
begin
btnSave.Enabled := false;
//将选择的关键字值读入
Edit1.Text := IniFile.ReadString(cobSection.Text, cobIni.Text, '');
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
// 使用TIniFile类的Create成员函数建立TIniFile对
//象,该对象用来读写当前目录中的sample.ini文件,
IniFile := TIniFile.Create('..\sample.ini');
//读取节点
cobSection.Clear;
IniFile.ReadSections(cobSection.Items);
cobSection.ItemIndex := 0;
cobSectionChange(sender);
btnSave.Enabled := false;
end;
procedure TForm1.cobSectionChange(Sender: TObject);
begin
cobIni.Clear;
// 将cobSection中所选择节中对应的各个
//变量及对应的值送入cobIni
IniFile.ReadSection(cobSection.Text, cobIni.Items);
cobIni.ItemIndex := 0;
cobIniChange(Sender);
end;
procedure TForm1.cobIniChange(Sender: TObject);
begin
btnSave.Enabled := false;
//将选择的关键字值读入
Edit1.Text := IniFile.ReadString(cobSection.Text, cobIni.Text, '');
end;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Unit Unit1;
Interface
Uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, IniFiles, StdCtrls, Buttons;
Type
TForm1 = Class(TForm)
Edit1: TEdit;
Edit2: TEdit;
BitBtn1: TBitBtn;
Procedure FormCreate(Sender: TObject);
Procedure BitBtn1Click(Sender: TObject);
Private
{ Private declarations }
Public
{ Public declarations }
End;
Var
Form1: TForm1;
Implementation
{$R *.dfm}
//INI配置文件操作: uses IniFiles
Function INI_New(Var aFile: String): Boolean;
Var
atext: TextFile;
Begin
aFile := Format('%sconfig.ini', [ExtractFilePath(Paramstr(0))]);
If Not FileExists(aFile) Then
Begin
AssignFile(atext, aFile);
Rewrite(atext);
CloseFile(atext);
End;
Result := FileExists(aFile);
End;
Function INI_Put_Str(aItem, aKey, aStr: String): Boolean; // 写INI-文本
Var
aFile: String;
Begin
Result := False;
If (Length(aItem) = 0) Or (Length(aKey) = 0) Then
Begin
Exit;
End;
If INI_New(aFile) Then
Begin
With TIniFile.Create(aFile) Do
Begin
Try
WriteString(aItem, aKey, aStr);
Result := True;
Finally
Free;
End;
End;
End;
End;
Function INI_Get_Str(aItem, aKey: String): String; // 读INI-文本
Var
aFile: String;
Begin
Result := '';
If (Length(aItem) = 0) Or (Length(aKey) = 0) Then
Begin
Exit;
End;
If INI_New(aFile) Then
Begin
With TIniFile.Create(aFile) Do
Begin
Try
Result := ReadString(aItem, aKey, '');
Finally
Free;
End;
End;
End;
End;
//可扩展下,如:INI_Get_Int INI_Get_Bool ...
Procedure TForm1.FormCreate(Sender: TObject);
Begin
Edit1.Text := INI_Get_Str('Set', 'Work11');
Edit2.Text := INI_Get_Str('Set', 'Work12');
End;
Procedure TForm1.BitBtn1Click(Sender: TObject); //保存
Begin
INI_Put_Str('Set', 'Work11', Edit1.Text);
INI_Put_Str('Set', 'Work12', Edit2.Text);
End;
End.
Interface
Uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, IniFiles, StdCtrls, Buttons;
Type
TForm1 = Class(TForm)
Edit1: TEdit;
Edit2: TEdit;
BitBtn1: TBitBtn;
Procedure FormCreate(Sender: TObject);
Procedure BitBtn1Click(Sender: TObject);
Private
{ Private declarations }
Public
{ Public declarations }
End;
Var
Form1: TForm1;
Implementation
{$R *.dfm}
//INI配置文件操作: uses IniFiles
Function INI_New(Var aFile: String): Boolean;
Var
atext: TextFile;
Begin
aFile := Format('%sconfig.ini', [ExtractFilePath(Paramstr(0))]);
If Not FileExists(aFile) Then
Begin
AssignFile(atext, aFile);
Rewrite(atext);
CloseFile(atext);
End;
Result := FileExists(aFile);
End;
Function INI_Put_Str(aItem, aKey, aStr: String): Boolean; // 写INI-文本
Var
aFile: String;
Begin
Result := False;
If (Length(aItem) = 0) Or (Length(aKey) = 0) Then
Begin
Exit;
End;
If INI_New(aFile) Then
Begin
With TIniFile.Create(aFile) Do
Begin
Try
WriteString(aItem, aKey, aStr);
Result := True;
Finally
Free;
End;
End;
End;
End;
Function INI_Get_Str(aItem, aKey: String): String; // 读INI-文本
Var
aFile: String;
Begin
Result := '';
If (Length(aItem) = 0) Or (Length(aKey) = 0) Then
Begin
Exit;
End;
If INI_New(aFile) Then
Begin
With TIniFile.Create(aFile) Do
Begin
Try
Result := ReadString(aItem, aKey, '');
Finally
Free;
End;
End;
End;
End;
//可扩展下,如:INI_Get_Int INI_Get_Bool ...
Procedure TForm1.FormCreate(Sender: TObject);
Begin
Edit1.Text := INI_Get_Str('Set', 'Work11');
Edit2.Text := INI_Get_Str('Set', 'Work12');
End;
Procedure TForm1.BitBtn1Click(Sender: TObject); //保存
Begin
INI_Put_Str('Set', 'Work11', Edit1.Text);
INI_Put_Str('Set', 'Work12', Edit2.Text);
End;
End.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
var myinifile:Tinifile;
begin
myinifile:=TInifile.Create(ExtractFilePath(paramstr(0))+'setup.ini');
Edit1.text:=myinifile.ReadString('配置设置','Work11','');
Edit2.text:=myinifile.ReadString('配置设置','Work12','');
begin
myinifile:=TInifile.Create(ExtractFilePath(paramstr(0))+'setup.ini');
Edit1.text:=myinifile.ReadString('配置设置','Work11','');
Edit2.text:=myinifile.ReadString('配置设置','Work12','');
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以声明一个模块级的变量,就在窗体最前面dim就可以了,然后这个变量可以被多个sub使用。控件的事件过程不会凭空多得到变量啊~只能得到事件发生而产生的变量。 如果是自定义的sub,可以在过程名后用括号声明变量,比如
private sub iSub(aaa as inxdteger,bbb as boolean)
private sub iSub(aaa as inxdteger,bbb as boolean)
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询