找回密码
 加入
搜索
查看: 2825|回复: 8

[AU3基础] 如何删除一个文件夹下的所有子文件夹而不删除文件(指点一二)

  [复制链接]
发表于 2010-9-29 11:23:30 | 显示全部楼层 |阅读模式
本帖最后由 j88iang 于 2010-9-29 12:37 编辑

指点江山,激扬文字
发表于 2010-9-29 11:45:25 | 显示全部楼层
DirRemove("C:\dir\dir1", 1)
删除 C:\dir\dir1文件夹以及该文件里面的文件

0 = (默认)不删除文件及子目录
1 = 删除文件及子目录(类似于 DOS 下的 DelTree 命令)
发表于 2010-9-29 11:51:57 | 显示全部楼层
DirRemove
 楼主| 发表于 2010-9-29 12:35:21 | 显示全部楼层
回复 3# 水木子

是多个子文件夹 怎么删除
 楼主| 发表于 2010-9-29 12:35:37 | 显示全部楼层
回复 2# pizigao


    是多个子文件夹 怎么删除
发表于 2010-9-29 12:58:59 | 显示全部楼层
有多少个就写多少行?
发表于 2010-9-29 16:01:09 | 显示全部楼层
给你段代码。你自己看看其中的关键。  然后把这段 代码做成一个函数,从根目录开始递归调用。就可以完成你要的功能了
#include <file.au3>
#include <array.au3>
Global $Path="c:"  ;开始遍历的根目录
Local $FileArray=_FileListToArray($Path) ;将根目录中所有的文件和文件夹读入数组
Local $ResultArray[100],$rI=0 ;定义一个结果数组和数组下标
_ArrayDisplay($FileArray,"所有的文件和文件夹") ;显示读取的所有目录和文件
For $i=1 To $FileArray[0] ;从所有的文件和文件夹列表中选出文件夹。
        _FileListToArray($Path&$FileArray[$i]) ;挨个遍历初始数组中的所有文件和文件夹。
        If @error<>1 Then  ;如果是文件夹,错误号不为1. 不是文件夹,错误号为1
                $ResultArray[$rI]=$FileArray[$i]  ;将该文件夹存入结果数组,数组下标自加1
                $rI+=1
        EndIf
Next
_ArrayDisplay($ResultArray,"文件夹列表") ;显示结果
发表于 2010-10-1 00:34:28 | 显示全部楼层
有文件或空子文件夹的子文件夹删不删?
发表于 2010-10-1 15:44:24 | 显示全部楼层
给你段代码。你自己看看其中的关键。  然后把这段 代码做成一个函数,从根目录开始递归调用。就可以完成你要 ...
lanfengc 发表于 2010-9-29 16:01



    借来一用
#include <file.au3>
#include <array.au3>
Global $Path="d:\lan"  ;开始遍历的根目录
Local $FileArray=_FileListToArray($Path,'*',2) ;将根目录中所有文件夹读入数组
_ArrayDisplay($FileArray,"所有的文件和文件夹") ;显示读取的所有目录
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-9-21 20:32 , Processed in 0.078751 second(s), 24 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表