|
发表于 2011-6-9 11:40
|
显示全部楼层
本楼为最佳答案
用FSO,用DIR有问题
下面这个程序是删除u盘内所有的文本文件,用到了递归,供参考- Sub KillUDiskTxt()
- Dim fso As Object
- Dim Drv As Object
- Set fso = CreateObject("Scripting.FilesystemObject")
- '查找U盘盘符
- For Each Drv In fso.Drives
- If Drv.DriveType = 1 Then
- '找到U盘执行删除程序
- KillTxt Drv.Path
- End If
- Next
- End Sub
- Sub KillTxt(ByVal strFolder As String)
- Dim fso, objFolder, colFiles, colSubFolders, objSubFolder, objFile
- Set fso = CreateObject("Scripting.FileSystemObject")
- Set objFolder = fso.GetFolder(strFolder)
- Set colFiles = objFolder.Files '得到所有的文件
- Set colSubFolders = objFolder.SubFolders '得到所有子文件夹
- '如果有子文件夹,则通过递归遍历子文件夹
- If colSubFolders.Count > 0 Then
- For Each objSubFolder In colSubFolders
- Call KillTxt(objSubFolder.Path)
- Next
- End If
- '如果文件不为0,则遍历所有文件,输出结果
- If colFiles.Count > 0 Then
- For Each objFile In colFiles
- '删除文本文件
- If Right(objFile.Path, 4) = ".txt" Then
- Kill objFile.Path
- End If
- Next
- End If
- End Sub
复制代码 |
评分
-
查看全部评分
|