如何 向一个 File Of Record 追加记录?

fsybaby 2005-04-10 03:54:34
我有一个 File of 记录 的变量,
我已经assignfile,请问是 Reset,还是别的,怎么Append不好使?,怎么打开才能直接向文件中追加记录?
...全文
150 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
fsybaby 2005-05-22
  • 打赏
  • 举报
回复
谢谢,我明白了大概的意思
hsgrass37301 2005-04-30
  • 打赏
  • 举报
回复
上班时间帮你写例子,呵呵,希望有人同样的帮助别人,谢谢

procedure TForm1.FormCreate(Sender: TObject);
type
arecord = record
name: string[10];
id: integer;
end;
var
f: file of arecord;
r: arecord;
begin
FileMode := fmOpenWrite;
AssignFile(f, 'c:\a.txt');
Rewrite(f);
r.name := 'hello';
r.id := 99;
BlockWrite(f, r, sizeof(r));
CloseFile(f);

FileMode := fmOpenRead;
AssignFile(f, 'c:\a.txt');
Reset(f);
BlockRead(f, r, sizeof(r));
text := r.name;
CloseFile(f);
end;
fsybaby 2005-04-29
  • 打赏
  • 举报
回复
那到底用什么方式打开? rewrite是用于文件不存在的情况,要读一个存在的记录文件用Reset?
Delphi1985 2005-04-16
  • 打赏
  • 举报
回复
rewrite是用于文件不存在的情况,要读一个存在的记录文件用Reset
没错的,给分
Delphi1985 2005-04-16
  • 打赏
  • 举报
回复
你用SEEK定位,再用write就搞定
Append好像只能用于文本文件吧
fsybaby 2005-04-16
  • 打赏
  • 举报
回复
有会的吗?
fsybaby 2005-04-10
  • 打赏
  • 举报
回复
不是文本文件呀,是 记录文件
dext 2005-04-10
  • 打赏
  • 举报
回复
begin
if OpenDialog1.Execute then
begin { open a text file }
AssignFile(f, OpenDialog1.FileName);
Append(f);
Writeln(f, ...);
Flush(f); { ensures that the data were actually written to file }
CloseFile(f);
end;

end;

16,748

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧