我的应用程序缓慢地读取一个浮点数的文本文件。不时情况会发生变化,需要重写文件。以下是一些示例代码:
procedure TAMI_Column_Selector.read_continuously (file_name: string);
var infile: TextFile;
f: Double;
begin
AssignFile (infile, file_name);
Reset (infile);
try
while not EOF (infile) do
begin
Read (infile, f);
process (f); // this may take quite some time, seconds or even minutes
end; // while
finally
CloseFile (infile);
end; // try..finally
end; // read_continuously //
如何编写同时可读取的文件?具体来说:
- 如何编写同时可读取的文件?
- 如何防止应用程序在尝试读取正在被写入的文件时崩溃?
- 我的应用程序如何知道文件已被重写?
您是否有任何(优雅的)解决此问题的方法?
先行致谢。
在 Windows 7 上使用 Delphi XE。
TFileStream
)而不是 Pascal IO。对于你的写入器,在打开文件时指定fmShareDenyWrite
。对于你的读取器,在打开文件时指定fmShareDenyNone
。或者,使用数据库! - David Heffernan