var
filea:textfile;
begin
filecreate('c:\a.txt');
assignfile(filea,'c:\a.txt');
write(filea,'a');
closefile(filea);
end;
老是在write处提示I/O错误103……为什么啊?
如果在filecreate后面加上rewrite(filea);,则在该行提示I/O错误32……不知道是为什么……
如果文件已存在,不写filecreate('c:\a.txt');一句的话,可以正常写入文本……不晓得是为什么…… 恳请各位大哥大姐帮帮忙啊~万分感谢
filea:textfile;
begin
filecreate('c:\a.txt');
assignfile(filea,'c:\a.txt');
write(filea,'a');
closefile(filea);
end;
老是在write处提示I/O错误103……为什么啊?
如果在filecreate后面加上rewrite(filea);,则在该行提示I/O错误32……不知道是为什么……
如果文件已存在,不写filecreate('c:\a.txt');一句的话,可以正常写入文本……不晓得是为什么…… 恳请各位大哥大姐帮帮忙啊~万分感谢
filea:textfile;
begin
filecreate('c:\a.txt');
assignfile(filea,'c:\a.txt'); //建立文件变量与文件的联系//缺少的内容是,建立联系后,必须打开文件,可以使用这两个函数:reset()[这个函数是以读的形式打开已经存在的文件,不能写入数据,如果文件不存在则报错。rewrite()[这个函数用于打开文件并且向文件中写入数据,如果文件不存在,则建立文件,并且打开。
//我想你的错误就在,虽然建立了文件变量与文件的联系,但是没有打开文件,所以不能写入文件。打开之后才能写入数据。
//那就要加上一句:
rewrite(filea); //以写的形式打开文件。
write(filea,'a'); //写入数据。
closefile(filea);
end; 注意:
reset(filename) 和 read()配套使用,用于读取已经存在文件。文件必须存在。
rewrite(filename)和write()配套使用,用于写入已经存在文件。文件不存在建立文件并且写入。个人意见,仅供参考!!
在TxtHandle:=FileCreate('c:\a.txt');之后,要加上与之相匹配的关闭文件的命令:
FileClose(TxtHandle);
TxtHandle是Integer变量……
感谢大家的帮助