我正在使用免费帕斯卡中的文件,我正在尝试打开一个文件,但如果它不存在,那么我会创建它。
这是我的代码:
program messages;
const PATH_ = 'data/messages/';
type messageFields =
record
date : String
; viewed : Boolean
; text : String
; sender : String [ 8 ]
end
; messagesFile = file of messageFields
;
procedure openMessagesFile ( var _file: messagesFile; _fileName: String; var error: Boolean );
begin
error := false;
assign ( _file, PATH_+_fileName );
{$I-}
reset ( _file );
{$I+}
if ( ioResult <> 0 ) then
error := true;
end;
var _file: messagesFile
; fileName: String
; error: boolean;
begin
readln(filename);
openMessageFile(_file, filename, error);
if ( error ) then
rewrite(_file);
end.
第一次执行程序时,由于文件不存在,所以抛出异常。第二次,效果很好!
这是一个例外:
An unhandled exception occurred at $00401759 :
EInOutError : Access denied