对文件的简单操作!!!!!这个问题早想问了,只是没有勇气 (27分)

  • 主题发起人 主题发起人 txyx
  • 开始时间 开始时间
T

txyx

Unregistered / Unconfirmed
GUEST, unregistred user!
想把一个字符串str写入文本文件pwd.txt,(覆盖原来的内容)
Assignfile(f,'d:/a/pwd.txt');
reset(f);
write(f,str);
closefile(f);
总是说I/O Error 32 是怎么回事啊?
创建一个新的pwd.txt后,没有内容的,错误依然,怎么回事?
编译通过了,但是运行出错!!!
 
a 目录存在吗???
 
当然都存在的
 
全部source呢?
 
Assignfile(f,'d:/a/pwd.txt');
rewrite(f);
^^^^^^^^^^^^^^^^^
write(f,str);
closefile(f);
 
哦,我试一试
 
问题依然,指针指到rewrite(f);这一行
 
给你看个例子:
......
FileName:='DingDing.dat';
AssignFile(AddressFile,FileName);
RecSize:=SizeOf(AddressData);
if FileExists(FileName) then
begin
Reset(AddressFile);
if Not Eof(AddressFile) then
begin
read(AddressFile,AddressData);
ShowRecord;
end;
end
else
begin
ClearData;
Rewrite(AddressFile);
end;
......
 
哦,我已经搞定了,去掉了rewrite(f)下的reset(f);就ok了,不知道为什么?
 
你试试这样行不行:
var
F: TextFile;
str: string;
begin
AssignFile(F,'d:/a/pwd.txt');
Rewrite(F);
try
Write(F,str);
finally
CloseFile(F);
end;
end;
如果这样不行的话,你看看pwd.txt这个文件的读写权限是否可写.

 
>>去掉了rewrite(f)下的reset(f);就ok了,不知道为什么?
rewrite(f)已经把文件打开了
当然不用reset了
 
读文件用reset,写文件用rewrite。
用过标准pascal的都应该知道的。
 
给分吧,兄弟
 
多人接受答案了。
 
好象不公平?
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
后退
顶部