如果參數名為“Save”,所有名為“Save”的子目錄及其內容都將被刪除(假設這些子目錄不包含其他子目錄)。
如果參數名不是"保存",只有指定的參數名。lua和參數名。所有“保存”子目錄中的lua.bak文件將被刪除。
下面是該函數的實現:
e
版本2
。裝配組件1
。子例程遍歷和刪除文件夾或文件,公共,參數文件夾名稱文本類型。
。局部變量的當前路徑,文本類型
。局部變量搜索結果,邏輯類型。
。局部變量文件屬性,整數類型。
。局部變量的完整路徑,文本類型
。局部變量文件名,文本類型
。局部變量文件擴展名,文本類型。
。匹配文件名、邏輯類型的局部變量。
獲取當前運行目錄
當前路徑=獲取當前目錄()
遍歷目錄
查找結果=遍歷目錄(當前路徑,"",0)
遍歷目錄條目
當搜索結果=真時
重復
獲取當前遍歷的文件或文件夾的完整路徑。
完整路徑=取當前目錄()+" \ "+取遍歷目錄條目()。
獲取文件或文件夾的屬性。
文件屬性=獲取文件屬性(完整路徑)
如果是目錄的話。
如果(文件屬性和目錄屬性)=目錄屬性,則
如果是“保存”目錄或其他包含“保存”的目錄
If(目錄名(完整路徑)=“保存”或目錄名(完整路徑)包含“保存”)
如果是“保存”目錄且參數名為“保存”,則刪除整個目錄及其內容。
如果文件夾名稱=“保存”,則
如果刪除目錄(完整路徑)= False,則
輸出(花費文本時間()+"無法刪除目錄:"+完整路徑)
否則
輸出(take text time ()+"目錄刪除成功:"+完整路徑)
如果…就會結束
如果它不是壹個“保存”目錄,只有指定的文件將被刪除。
否則
文件名=文件夾名+”。lua "
文件擴展名=文件名+"。bak "
匹配文件名=取文件名(完整路徑)=文件名或取文件名(完整路徑)=文件擴展名。
刪除匹配的文件
如果文件名匹配並且(文件屬性和文件屬性)=文件屬性,則
如果刪除文件(完整路徑)= False,則
輸出(花費文本時間()+"無法刪除文件:"+完整路徑)
否則
輸出(花費文本時間()+"文件成功刪除:"+完整路徑)
如果…就會結束
如果…就會結束
如果…就會結束
如果…就會結束
如果是文件,而不是目錄。
否則,如果(文件屬性和文件屬性)=文件屬性,則
這裏不需要對文件做任何處理,因為它已經在目錄處理中被考慮了。
如果…就會結束
繼續遍歷下壹個目錄條目。
查找結果=遍歷目錄(0,"",0)
直到找不到結果。
結束時間
結束子程序
使用說明:
將上面的代碼粘貼到易語言的IDE中。
調用遍歷和刪除文件夾或文件的函數,把要匹配的文件夾或文件名作為參數傳入。
運行程序,函數會按照上述邏輯遍歷當前目錄及其子目錄,並執行相應的刪除操作。
註意事項:
刪除前,請確保重要文件已備份,以免數據丟失。
在實際部署之前,建議對代碼進行全面測試,以確保它按預期運行。
輕松語言文件操作可能會受到操作系統權限的影響,因此請確保您的程序有足夠的權限來執行刪除操作。
如果要刪除的文件或文件夾被其他程序占用,刪除操作可能會失敗。
目錄名函數用於獲取路徑的目錄名部分,以確保您的易語言版本支持該函數或找到替代方法。
這個函數假設在目錄結構中沒有循環引用,也就是說,壹個目錄不直接或間接地包含自己作為子目錄。如果是這種情況,遍歷操作可能會陷入無限循環。