delphi如何读取ini文件或txt文件到edit控件?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了delphi如何读取ini文件或txt文件到edit控件?相关的知识,希望对你有一定的参考价值。
我想用delphi来写程序,ini或txt格式如下:
[配置设置]
Work11=79038692
Work12=90760902
我想把Work11的内容显示到edit1中,把Work12显示到edit2中。
文件名为config.ini,文件路径不要固定的,和程序一起运行,ini文件和程序在一个文件夹就可以运行。
哪位大侠帮着写写,重谢!
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; 参考技术B 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. 参考技术C var myinifile:Tinifile;
begin
myinifile:=TInifile.Create(ExtractFilePath(paramstr(0))+'setup.ini');
Edit1.text:=myinifile.ReadString('配置设置','Work11','');
Edit2.text:=myinifile.ReadString('配置设置','Work12',''); 参考技术D 可以声明一个模块级的变量,就在窗体最前面dim就可以了,然后这个变量可以被多个sub使用。控件的事件过程不会凭空多得到变量啊~只能得到事件发生而产生的变量。 如果是自定义的sub,可以在过程名后用括号声明变量,比如
private sub iSub(aaa as inxdteger,bbb as boolean)本回答被提问者采纳
delphi中,如何读取一个目录中的所有文件?在线等……
参考技术A 分类: 电脑/网络 >> 程序设计 >> 其他编程语言问题描述:
现需读取目录:“c:\history data”文件夹中所有文件(该文件夹中,只包含.txt和.done文件),需对每个文件进行处理。
另,求将文件转换目录的函数(比如将c:\history data的文件转移到d:\history中)
解析:
procedure FileSearch(PathName:string);
var
F : TSearchRec;
Found : Boolean;
begin
ChDir(PathName);
Found := (FindFirst('*.*', faAnyFile, F) = 0);
while Found do
begin
if (F.Name = '.') or (F.Name = '..') then
begin
Found := (FindNext(F) = 0);
Continue;
end;
if (F.Attr and faDirectory)>0 then
begin
Application.ProcessMessages;
FileSearch(F.Name);
end;
插入你的代码,F.Name就是文件名,GetCurrentDir可以得到当前目录
Found := (FindNext(F) = 0);
end;
FindClose(F);
ChDir('..\');
end;
转换目录可以用MoveFile,查一下帮助
以上是关于delphi如何读取ini文件或txt文件到edit控件?的主要内容,如果未能解决你的问题,请参考以下文章