一个关于读文件的问题(50分)

  • 主题发起人 主题发起人 常山赵子龙
  • 开始时间 开始时间

常山赵子龙

Unregistered / Unconfirmed
GUEST, unregistred user!
我在主模块内(不知道是不是这样叫)加了一个过程:
TForm1.ReadData;
var
f:TextFile;
begin
assign(f,'aaa.dat')
{*}
reset(f);
{读文件的语句}
closefile(f);
end;
可是程序一运行到*时就提示:
[Error]Main.pas(87):Incompatible types: 'TPersistent' and 'Text'
同样的语句在其他模块中一切正常,请问这是为什么,该怎么解决(详细一些)。
另外说一句:我是VB转Delphi的,很多简单问题不懂,以后要多多麻烦大家。
 
用 AssignFile(F, 'aaa.dat')
Assign 标准过程已经不再适用于文件
 
if FileExists('aaa.dat') then
AssignFile(f,'aaa.dat')
else
begin
showmessage('文件不存在');
exit;
end;
reset(f);
{读文件的语句}
closefile(f);
end;
 
Incompatible types: 'TPersistent' and 'Text'
----
说了是类型不统一,textfile 对象只能访问文本文件吧,,,,,,,,,,,,,
 
Assign是以前Pascal下的用法,Delphi下已经改为Assignfile
 
aaa.dat不是文本文件
 
那为什么在其他模块中一切正常呢?
 
f:text;(*)

assign(f,'a');

close(f);
 
同样的语句,同样的文件,为什么在其他模块中一切正常呢?
没有人能回答吗?
试过AssignFile了,正常。可是上面的问题还是让人费解。
 
Door2000 的解释是正确的:
Assign是以前Pascal下的用法,Delphi下已经改为Assignfile
就这么简单啊,怎么个费解法了?:)
 
就应该用Assignfile!
 
多人接受答案了。
 
后退
顶部