[已解决]AU3 关于搜索并移动且重命名文件
本帖最后由 Hen5ei 于 2010-12-15 15:45 编辑要求:搜索 选择的文件夹下的全部文件,并保存到要保存的目录中,如果存在子目录则将里面的文件复制到根目录下,并保存为 “文件夹名_*.*”
如果有更多的目录则 为 文件夹1_文件夹2_..._*.*
各位帮我想想方法吧,最好贴上代码我研究研究,谢谢了
#include <File.au3>
$sRootPath = FileSelectFolder('xxxx', '')
copy($sRootPath)
Func copy($sPath)
;处理文件
$aFileList = _FileListToArray($sPath, '*', 1)
If Not @error Then
$sSubPath = StringReplace($sPath, $sRootPath, '');先去掉根目录,取得子目录名
If StringLeft($sSubPath, 1) = '\' Then $sSubPath = StringTrimLeft($sSubPath, 1) & '\';字符处理
For $i = 1 To $aFileList;复制
FileCopy($sPath & '\' & $aFileList[$i], @DesktopDir & '\' & StringReplace($sSubPath, '\', '_') & $aFileList[$i])
Next
EndIf
;处理文件夹
$aFolderList = _FileListToArray($sPath, '*', 2)
If Not @error Then
For $i = 1 To $aFolderList
copy($sPath & '\' & $aFolderList[$i]);继续递归子目录
Next
EndIf
EndFunc ;==>copy
谢谢老大了,太辛苦你了
页:
[1]