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文件和程序在一个文件夹就可以运行。
哪位大侠帮着写写,重谢!
展开
 我来答
sunrise17
2011-08-02 · TA获得超过6816个赞
知道大有可为答主
回答量:1.2万
采纳率:76%
帮助的人:7874万
展开全部
可以参考以下代码段
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;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
HJ_3000
2011-08-02 · TA获得超过563个赞
知道小有建树答主
回答量:1264
采纳率:78%
帮助的人:55.6万
展开全部
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.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
慕采莲01O
2011-08-04
知道答主
回答量:11
采纳率:0%
帮助的人:4.6万
展开全部
var myinifile:Tinifile;
begin
myinifile:=TInifile.Create(ExtractFilePath(paramstr(0))+'setup.ini');
Edit1.text:=myinifile.ReadString('配置设置','Work11','');
Edit2.text:=myinifile.ReadString('配置设置','Work12','');
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yunlkong
2011-08-15 · TA获得超过5711个赞
知道大有可为答主
回答量:9695
采纳率:0%
帮助的人:1.9亿
展开全部
可以声明一个模块级的变量,就在窗体最前面dim就可以了,然后这个变量可以被多个sub使用。控件的事件过程不会凭空多得到变量啊~只能得到事件发生而产生的变量。 如果是自定义的sub,可以在过程名后用括号声明变量,比如
private sub iSub(aaa as inxdteger,bbb as boolean)
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式