我是初学
请问怎么把edit1.txt edit2.txt edit3.txt
3个框里的内容写到一个文件里
然后能分别读出来到edit4.txt edit5.txt edit6.txt
能写个完整的的程序给我学习下吗?谢谢先
请问怎么把edit1.txt edit2.txt edit3.txt
3个框里的内容写到一个文件里
然后能分别读出来到edit4.txt edit5.txt edit6.txt
能写个完整的的程序给我学习下吗?谢谢先
s:tstring;
s=tstringlist.create;
//写
s.add(edit1.text);
s.add(edit2.text);
s.add(edit3.text);
s.savetofile(filename);
//读
s.loadfromfile(filename);
edit4.text:=s.strings[0];
edit5.text:=s.strings[1];
edit6.text:=s.strings[2];
s.free;
TPerson=Packed record
Name:string[20];
Pwd:string[20];
Age:integer;
end;
var
Form1: TForm1;
PersonFile:file of TPerson;
Person:TPerson;implementation{$R *.dfm}procedure TForm1.Button2Click(Sender: TObject);
begin
Person.Name:=edit1.Text;
Person.Pwd:=edit2.Text;
Person.Age:=edit3.text;
assignfile(PersonFile,'key.dat');
reset(PersonFile);
seek(PersonFile,filesize(PersonFile));
try
write(PersonFile,Person);
finally
closefile(PersonFile);
end;
end;procedure TForm1.Button1Click(Sender: TObject);
begin
assignfile(PersonFile,'key.dat');
reset(PersonFile);
try
if not eof(PersonFile) then
read(PersonFile,Person);
finally
closefile(PersonFile);
end;
edit4.Text:=Person.Name;
Edit5.Text:=person.Pwd;
edit6.text:=person.age;
end;
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;type
TForm1 = class(TForm)
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
Edit5: TEdit;
Edit6: TEdit;
Button1: TButton;
Button2: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation
uses
inifiles;{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
var
system1:tinifile;
filename:string;
begin
filename:=ExtractFilePath(ParamStr(0))+'\aa.ini';
system1:=tinifile.Create(filename);
system1.writestring('dd','d',edit1.text);
system1.writestring('dd','a',edit2.text);
system1.writestring('dd','s',edit3.text);
end;procedure TForm1.Button2Click(Sender: TObject);
var
system1:tinifile;
filename:string;
begin
filename:=ExtractFilePath(ParamStr(0))+'\aa.ini';
system1:=tinifile.Create(filename);
edit4.text:=system1.readstring('dd','d','');
edit5.text:=system1.readstring('dd','a','');
edit6.text:=system1.readstring('dd','s','');
end;end.
应如下:
type
TPerson=Packed record
Name:string[20];
Pwd:string[20];
Age:integer;
end;
var
Form1: TForm1;
PersonFile:file of TPerson;
Person:TPerson;implementation{$R *.dfm}procedure TForm1.Button2Click(Sender: TObject);
begin
Person.Name:=edit1.Text;
Person.Pwd:=edit2.Text;
Person.Age:=IntToStr(edit3.text);
assignfile(PersonFile,'key.dat');
reset(PersonFile);
seek(PersonFile,filesize(PersonFile));
try
write(PersonFile,Person);
finally
closefile(PersonFile);
end;
end;procedure TForm1.Button1Click(Sender: TObject);
begin
assignfile(PersonFile,'key.dat');//必须在有效路径下有一个Key.dat的文件
reset(PersonFile);
try
if not eof(PersonFile) then
read(PersonFile,Person);
finally
closefile(PersonFile);
end;
edit4.Text:=Person.Name;
Edit5.Text:=person.Pwd;
edit6.text:=StrToInt(person.age);
end;
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs,stdctrls;
type
keyinfo=record
p:string[20];
q:string[20];
end;
type
TForm1 = class(TForm)
Edit1: TEdit;
Edit2: TEdit;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation
{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
var
RecordFileVar:file of keyinfo;
RecCount:integer;
key:keyinfo;
begin
AssignFile(RecordFileVar,'d:\aa.dat');
Rewrite(RecordFileVar);
RecCount:=FileSize(RecordFileVar);
Seek(RecordFileVar,Reccount);
key.p:=edit1.Text;
key.q:=edit2.Text;
write(RecordFileVar,key);end;end.
更改为Reset(RecordFileVar);
reset我也试过了啊。好困惑啊……ZzzZZz