首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

delphi 文件夹操作

2012-09-10 
求助delphi 文件夹操作我需要创建个临时文件夹,比如C:\tmp在某事件发生 比如 tform1.button1click时,先要

求助delphi 文件夹操作
我需要创建个临时文件夹,比如C:\tmp
在某事件发生 比如 tform1.button1click时,先要清空这个临时文件夹
这里我想了两种办法,1、先删除C:\tmp,再建立。2、清空内容
哪种办法比较稳妥简洁呢
求高手指教
forcedirectories和CreateDirectory 创建文件夹,要是能覆盖就好了  



[解决办法]
先判断,没有就创建,有就删除里面的文件(文件夹就不用删除了)
[解决办法]
我以前是按 存在就删除重建、不存在就新建 的思想操作的。


if DirectoryExists('D:\temp') then
begin
try
P:= 'D:\temp';//这里改成你要删除的任意目录名
With T do
Begin
Wnd:=0;
wFunc:=FO_DELETE;
pFrom:=Pchar(P);
pTo:=nil;
fFlags:=FOF_ALLOWUNDO+FOF_NOCONFIRMATION+FOF_NOERRORUI;//标志表明允许恢复,无须确认并不显示出错信息
hNameMappings:=nil;
lpszProgressTitle:= '正在删除文件夹 ';
fAnyOperationsAborted:=False;
End;
SHFileOperation(T);
showmessage('临时文件删除成功!');
exit;

except
showmessage('删除文件夹失败,请手工删除!'+#13#10+'路径为:D:\temp');
end;
end else
begin
try
//创建 D:\temp\ 目录
ForceDirectories('D:\temp');
exit;
except
showmessage('创建文件夹失败,请手工创建!'+#13#10+'文件夹为:D:\temp');
exit;
end;
end;
[解决办法]

Delphi(Pascal) code
if DirectoryExists('D:\temp') thenbegin  try    P:= 'D:\temp';//这里改成你要删除的任意目录名    with T do    begin      Wnd:=0;      wFunc:=FO_DELETE;      pFrom:=Pchar(P);      pTo:=nil;      fFlags:=FOF_ALLOWUNDO+FOF_NOCONFIRMATION+FOF_NOERRORUI;//标志表明允许恢复,无须确认并不显示出错信息      hNameMappings:=nil;      lpszProgressTitle:= '正在删除文件夹 ';      fAnyOperationsAborted:=False;    end;    SHFileOperation(T);    showmessage('临时文件删除成功!');    exit;  except    showmessage('删除文件夹失败,请手工删除!'+#13#10+'路径为:D:\temp');  end;end elsebegin  try    //创建 D:\temp\ 目录    ForceDirectories('D:\temp');    exit;  except    showmessage('创建文件夹失败,请手工创建!'+#13#10+'文件夹为:D:\temp');    exit;  end;end;
[解决办法]
另外CreateDirectory也可以用MkDir

热点排行