delphi如何刪除目錄和目錄下的所有檔案

2022-01-06 21:00:45 字數 6358 閱讀 9614

1樓:茹修傑申致

你可以使用

delphi

jvcl

jvcl是由超過500個可視及不可視元件組成的庫,可以參考其中**

2樓:邛英彥焉周

沒必要去迴圈刪除,速度很慢,直接呼叫api就行了,如下,直接在uses

shellapi之後,呼叫shmydeldirectory去刪除你的目錄.

function

shmydeldirectory(constsource:

string):

boolean;

varfo:

tshfileopstruct;

begin

fillchar(fo,

sizeof(fo),

0);with

fodo

begin

wnd:=

0;wfunc

:=fo_delete;

pfrom

:=pchar(source

+#0);

pto:=

#0#0;

fflags

:=fof_noconfirmation

+fof_silent;

end;

result

:=(shfileoperation(fo)=0);

end;

delphi如何刪除目錄和目錄下的所有檔案

3樓:匿名使用者

沒必要去迴圈刪除,速度很慢,直接呼叫api就行了,如下,直接在uses shellapi之後,呼叫shmydeldirectory去刪除你的目錄.

function shmydeldirectory(const source: string): boolean;

varfo: tshfileopstruct;

begin

fillchar(fo, sizeof(fo), 0);

with fo do

begin

wnd := 0;

wfunc := fo_delete;

pfrom := pchar(source + #0);

pto := #0#0;

fflags := fof_noconfirmation + fof_silent;

end;

result := (shfileoperation(fo) = 0);

end;

4樓:文件類共創空間

使用遞迴呼叫。深入資料夾中刪掉檔案,然後再刪資料夾,然後再逐層返回。

function deletefile(mdirname: string; ext: string = '*'): boolean;

varvsearchrec: tsearchrec;

vpathname, tmpext: string;

k: integer;

begin

result := true;

tmpext := ext;

if pos('.', tmpext) = 0 then

tmpext := '.' + tmpext;

vpathname := mdirname + '\*.*';

k := findfirst(vpathname, faanyfile, vsearchrec);

while k = 0 do

begin

if (vsearchrec.attr and fadirectory > 0) and

(pos(vsearchrec.name, '..') = 0) then

begin

filesetattr(mdirname + '\' + vsearchrec.name, fadirectory);

result := deletepath(mdirname + '\' + vsearchrec.name, ext);

endelse if pos(vsearchrec.name, '..') = 0 then

begin

filesetattr(mdirname + '\' + vsearchrec.name, 0);

if ((comparetext(tmpext, extractfileext(vsearchrec.name)) = 0) or (comparetext(tmpext, '.*') = 0)) then

result := deletefile(pchar(mdirname + '\' + vsearchrec.name));

end;

if not result then

break;

k := findnext(vsearchrec);

end;

findclose(vsearchrec);

end;

5樓:匿名使用者

你可以使用 delphi jvcl jvcl是由超過500個可視及不可視元件組成的庫 ,可以參考其中**

6樓:匿名使用者

迴圈可以,我是直接在直寫的,可能有語法錯誤

function deldir(dirname:string):boolean;

varrs:tsearchrec;

path:string;

begin

result := true;

trypath := dirname;

if path[length(path)] <> '\' then path := path + '\';

if findfirst(path+'*.*',faanyfile,rs) = 0 then begin

repeat

if (rs.name='.')or(rs.name='..') then continue;

if rs.attr or fadirectory = fadirectory then begin

if deldir(path+rs.name) then // 先遞迴進入這個目錄刪除裡面的檔案,在裡面findfirst並 findclose

rmdir(path+rs.name); // 退出遞迴後再刪除目錄

end else

deletefile(path+rs.name);

until findnext(rs)<>0;

end;

findclose(rs); // 這個一定要

except end;

end;

用delphi如何實現:刪除指定目錄(含子目錄)下指定檔名的檔案?? 10

7樓:

function dir_del_ex(const apath: string): boolean; //uses shellapi 刪除一個目錄:包括非空目錄, 或者檔案

varfo: tshfileopstruct;

adir: string;

begin

adir := excludetrailingpathdelimiter(apath);

fillchar(fo, sizeof(fo), 0);

with fo do

begin

wnd := 0;

wfunc := fo_delete;

pfrom := pchar(adir + #0);

pto := #0#0;

fflags := fof_noconfirmation + fof_silent;

end;

result := (shfileoperation(fo) = 0);

end;

8樓:匿名使用者

遞迴 加點分我給你貼個原始碼

vba 刪除當前檔案目錄下的檔案

9樓:設計複雜

1、首先在工作表中,點選選單欄【開發工具】,在其工具欄裡,點選【visual basic】,進入vba介面。

2、然後在vba介面,點選選單欄【插入】,在其下拉選單中,點選【模組】。

3、會彈出**編輯視窗,在**編輯視窗,輸入下**。

4、未執行**前,f盤目錄下有「789.xlsx」檔案。

5、在vba介面,點選執行按鈕,會發現f目錄下,「789.xlsx」檔案被成功刪除了。

10樓:姓王的

【之前】是資料夾,**中少了一個"\"

filename = dir(thisworkbook.path & "\之前\" & range("c2") & range("d2") & "檔案.xls")

11樓:大吉祥

thisworkbook.path & "\檔名(包括副檔名,如xls等)"加上「.delete」

12樓:我是真的少校

1)、vb語句:kill

sub deletefile()

dim strfile as string

strfile = thisworkbook.path & "\temp.xls"

kill strfile

end sub

sub deletefile2()

dim strfile as string

strfile = thisworkbook.path & "\temp.xls"

if dir(strfile) = "" then

msgbox strfile & " does not exists", vbcritical

else

kill strfile

end if

end sub

2)、filesystemobject物件:deletefile方法

sub deletefile_fso()

dim fso as filesystemobject

dim strfile as string

strfile = thisworkbook.path & "\test.xls"

set fso = new filesystemobject

if fso.fileexists(strfile) then

fso.deletefile strfile

else

msgbox strfile & " does not exists"

end if

set fso = nothing

end sub

delphi中如何刪除當前目錄下的一個指定的資料夾 5

delphi如何刪除資料夾

13樓:匿名使用者

使用rmdir函式可刪除空的子目錄。

14樓:匿名使用者

例:deletefile('c:\aaa\bbb.dat');

搞錯了,這是刪除檔案。我的回答裡面回答過別人的同樣問題,你找一下。

找到了裡面有。

delphi 如何刪除資料夾下建立時間最早的檔案

15樓:匿名使用者

// 取得檔案建立時間

function getfilecreationtime(const filename: string): tdatetime;

varfiletime: tfiletime;

localfiletime: tfiletime;

hfile: thandle;

systemtime: tsystemtime;

begin

result := 0;

filetime.dwlowdatetime := 0;

filetime.dwhighdatetime := 0;

hfile := fileopen(filename, fmsharedenynone);

tryif hfile <> 0 then

begin

windows.getfiletime(hfile, @filetime, nil, nil);

filetimetolocalfiletime(filetime, localfiletime);

filetime := localfiletime;

end;

finally

fileclose(hfile);

end;

if filetimetosystemtime(filetime, systemtime) then

result := systemtimetodatetime(systemtime);

end;

基本藥物目錄的和非基本藥物目錄的區別

基本藥物目錄,現在是2009版的了,全國統一,目前只出來了基層部分,還有一個其他部分沒有出來現在各地的招標工作都在開展,從基本藥物目錄指定的出發點來看 按照防治必須 安全有效 使用方便 中西藥並重 基本保障 臨床首選的原則,結合中國用藥特點合理確定中國基本藥物品種劑型和數量,在保持數量相對穩定的基礎...

檔案目錄和目錄檔案各起什麼作用 目前廣泛採用的目錄結構形式是

檔案目錄用於對單個檔案的控制,它記錄檔案的名字 檔案長度 檔案存放在外存上的實體地址,以及檔案屬性和檔案建立時間 日期等資訊。目錄檔案是全部檔案目錄組成的檔案,用於整個檔案系統的管理。檔案的目錄結構一般有三種形式 一級目錄 二級目錄 多級樹形目錄。目前廣泛採用的目錄結構形式是樹形目錄結構。它的主要優...

檔案刪除時目錄已損壞且無法讀取刪不掉

用個強制刪除工具 比如說是超級巡警檔案暴力刪除器,將要刪除的檔案用滑鼠拖入工具的主介面,選擇 暴力刪除 正常情況重啟電腦即可直接刪除,建議不要輕易刪除或粉碎不確定的檔案。很多時候檔案本身不是病毒,沒必要去殺或者刪除的。可能是某個執行程式正在呼叫該檔案或執行程式產生的臨時記錄類檔案。對於目錄損壞可能是...