aryce 发表于 2016-12-31 17:32:36

关于AU3对文件和目录的操作 新手没什么头绪希望指点



我想做一个脚本,如图。把中文名相同的文件放在同一个文件夹里。 移动的时候顺便删除文件名里面除了数字以外的其他字符

我觉得这了应该有几个地方,1 首先遍历文件夹里面所有文件的名字,存到数组。 2 然后数组的元素一个一个处理 第一个存入变量a,删除 除了中文以外的字符存入变量b 用b的名字新建一个文件夹, 把a文件移动进去,移动的时候顺便删除除数字之外的其他字符。3 继续处理第二个文件......

我是新手 ,看了一下帮助文件 好像没有看到直接获取到文件夹所有文件名的函数

q410225 发表于 2016-12-31 17:52:10

A大的AU3函数巡捕很不错,推荐使用

有一个自定义函数
_FileListToArray()
创建指定文件夹的文件 和\或 文件夹清单数组(类似于使用 Dir /B 开关)

要是用函数巡捕,很轻松就能找到

aryce 发表于 2016-12-31 18:55:24

回复 2# q410225


    那是什么 {:face (197):} 我是小白

229989799 发表于 2017-1-3 20:32:40

都是什么片子哦,还改成这样的名字。

q410225 发表于 2017-1-3 21:58:05

回复 3# aryce

Au3Chm 函数询捕 (帮助文档辅助)_1.5.1.1

http://www.autoitx.com/forum.php?mod=viewthread&tid=20612&fromuid=161

luren666 发表于 2017-1-5 00:49:37

看FileFindFirstFile 的示例代码

;=============================
;例子2:递归查找当前目录及其子目录下的所有文件
;=============================
FindAllFile(@ScriptDir)
Func FindAllFile($sDir)
    Local $hSearch = FileFindFirstFile($sDir & "\*.*")
    ; 检查搜索是否成功
    If $hSearch = -1 Then Return
    While 1
      Local $sFile = FileFindNextFile($hSearch)
      If @error Then ExitLoop
      
      If @extended Then
            FindAllFile($sDir & "\" & $sFile)
            ContinueLoop
      EndIf
      FileWriteLine("找到的文件.txt",$sDir & "\" & $sFile)
    WEnd
    ; 关闭搜索句柄
    FileClose($hSearch)
EndFunc

chishingchan 发表于 2017-1-6 22:45:05

建议楼主收集一些相关的代码然后再拼起来,不明白再问。我想别人很难抽出一大段时间来给你编写完整的代码的。
页: [1]
查看完整版本: 关于AU3对文件和目录的操作 新手没什么头绪希望指点