我记得键盘输入有种方法,不过不记得了,如写#106#13在一个文本文件中,怎样输入?
解决方案 »
- 如何释放DLL里面的线程啊
- 关于delphi调用c编写dll时传递char*参数问题
- Dephi适合做什么程序?
- 医院管理中门诊收费系统怎么样做日清月结?
- 请idilent(怎么理解怎么说)大哥进来领分!顺便有几个问题请教
- 急问?
- 急!!Delphi怎么调用dll中的函数?一定加分
- 这控件是什么?????
- 求批量导入EXCEL数据到SQL 2000的好方案。如10列数量100W条记录,只有这么多分了
- 在DELPHI中如何用ADO控件打开带密码的ACCESS数据库?
- ★★★www.csdn.com.cn★★★已经开通~目前正在测试阶段~!!
- 大家好!我想做在dbgrideh中若按标题,记录则按标题排序(包括顺序和倒序)?
( 阅读次数:5)
type
Student = record
FirstName, LastName: string[20];
PhoneNumber: string[15];
PostCode: Integer;
Birthday: TDate;
end;
StudentList = file of Student;写入:
procedure TForm1.Button1Click(Sender: TObject);
var
sss: TFileStream;
s: Student;
begin
//...此处判断文件是否存在,如果不存在则建立它...
sss := TFileStream.Create('c:\a.dat', fmOpenWrite);
try
sss.Seek(0, soFromEnd);//新增
{ sss.Seek(0, soFromBeginning);//覆盖则用此方法}
s.FirstName := 'FirstName';
s.LastName := 'LastName';
s.PhoneNumber := '123456';
s.PostCode := 123456;
s.Birthday := Date;
sss.Write(s, sizeof(s));
s.FirstName := '111FirstName';
s.LastName := '111LastName';
s.PhoneNumber := '111123456';
s.PostCode := 111123456;
s.Birthday := Date;
sss.Write(s, sizeof(s));
finally
sss.Free;
end;
end;读取
procedure TForm1.Button2Click(Sender: TObject);
var
sss: TFileStream;
s: Student;
numread: Integer;
begin
sss := TFileStream.Create('c:\a.dat', fmOpenRead);
try
while True do
begin
numread := sss.Read(s, sizeof(s));
if numread sizeof(s) then break;
showmessage(s.firstname + #13 + s.LastName + #13 +
s.PhoneNumber +#13+
inttostr(s.PostCode)+#13+
datetostr(s.birthday)); end;
finally
sss.Free;
end;
end;