Hen5ei 发表于 2010-3-31 22:28:31

[已解决]AU3 关于搜索并移动且重命名文件

本帖最后由 Hen5ei 于 2010-12-15 15:45 编辑

要求:搜索 选择的文件夹下的全部文件,并保存到要保存的目录中,如果存在子目录则将里面的文件复制到根目录下,并保存为 “文件夹名_*.*”
如果有更多的目录则 为 文件夹1_文件夹2_..._*.*


各位帮我想想方法吧,最好贴上代码我研究研究,谢谢了

sxd 发表于 2010-4-1 23:39:28


#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

Hen5ei 发表于 2010-4-2 07:20:39

谢谢老大了,太辛苦你了
页: [1]
查看完整版本: [已解决]AU3 关于搜索并移动且重命名文件