查找某个文件并替换它?[2011.10.09]
本帖最后由 antony410 于 2011-10-9 21:42 编辑例如:
查找C:\Program Files\xxx\xx2\123.xml ,查到后,用当前文件夹的123.xml替换,
这里的XXX会随机变换数字,不是固定的文件夹,且xxx下面还有子文件夹\xx2,
如何查找\xxx\或子文件夹下面的123.xml,并替换它? 没有看懂。 我猜的,楼主是不是在说遍历?? 本帖最后由 gzh888666 于 2011-10-9 19:31 编辑
例如:
查找C:\Program Files\xxx\123.xml ,查到后,用当前文件夹的123.xml替换,
这里的XXX会随机变换数 ...
antony410 发表于 2011-10-9 17:55 http://www.autoitx.com/images/common/back.gif#Include <File.au3>
$Dir = _FileListToArray (@ProgramFilesDir,"*",2)
For $i=1 To UBound($Dir) - 2
IfFileExists(@ProgramFilesDir&"\"&$Dir[$i]&"\123.xml") Then
MsgBox(0,"",@ProgramFilesDir&"\"&$Dir[$i]&"\123.xml")
ExitLoop
EndIf
Next 本帖最后由 antony410 于 2011-10-9 21:45 编辑
回复 4# gzh888666
你给的代码已经成功查到。谢谢。但\xxx下面还有子文件夹,里面还有123.xml,请问怎样继续查找下去? 楼主这个是要做全盘搜索吧 本帖最后由 netegg 于 2011-10-9 22:02 编辑
参考下这个吧http://www.autoitx.com/thread-480-1-1.html懒得帮你做出完整的了 回复 7# netegg
本人不才,看了你给我的网址也不懂得点样写.呵呵。 楼主的悟性有待提高丫,给你贴一个明白的:
#include <File.au3>
$t_File = "123.xml"
_FileRecur(@windowsDir)
msgBox(64, '', '遍历完毕,没有其它发现!')
Func _FileRecur($_Path)
$folder = _FileListToArray($_Path, "*", 2)
If not IsArray($folder) then return 0
For $o = 1 to $folder
If FileExists($_Path & "\" & $folder[$o] & "\" & $t_File) Then
msgBox(0, '', $_Path & "\" & $folder[$o] & "\" & $t_File)
Else
_FileRecur($_Path & "\" & $folder[$o])
EndIf
Next
EndFunc ;==>_FileRecur()
参考:http://www.autoitx.com/forum.php?mod=viewthread&tid=5416 回复 9# mdxaux
谢谢。 复杂的东东俺看不懂也! 回复 11# htmgyv
看不懂就一个函数一个函数去弄懂,没有人天生就懂 回复htmgyv
看不懂就一个函数一个函数去弄懂,没有人天生就懂
lynfr8 发表于 2011-10-26 18:55 http://www.autoitx.com/images/common/back.gif
深有同感! 如果这都没有耐心, 学什么不了任何计算机语言的
页:
[1]