找回密码
 加入
搜索
楼主: dnvplj

[系统综合] 复制文件时如有相同名称的如何复制到其他文件夹里

[复制链接]
发表于 2021-12-7 15:51:29 | 显示全部楼层
dnvplj 发表于 2021-12-7 15:35
现一共4个文件,但一次只能复制2个文件。不管删除数组那2行,其他的2行都能复制成功。所用的文件:附件上 ...

你所有要复制的文件名都是一样的 新建文本文档.txt
        $a_File[1] = @ScriptDir & '\134\1\2\3\新建文件夹62\新建文本文档.txt'
        $a_File[2] = @ScriptDir & '\134\1\2\新建文本文档.txt'
        $a_File[3] = @ScriptDir & '\134\3\新建文件夹62\新建文件夹963\txt\d\新建文件夹\eee\999\csr\egx\新建文本文档.txt'
        $a_File[4] = @ScriptDir & '\134\3\新建文件夹62\新建文件夹963\新建文本文档.txt'
这又怎么可能在同一个文件夹出现?4个文件都是一个名怎么可能
 楼主| 发表于 2021-12-7 15:57:15 | 显示全部楼层
afan 发表于 2021-12-7 15:51
你所有要复制的文件名都是一样的 新建文本文档.txt
        $a_File[1] = @ScriptDir & '\134\1\2\3\新 ...

如文件夹下有相同的文件,那就在创建文件夹可以吗?
发表于 2021-12-7 16:12:50 | 显示全部楼层
dnvplj 发表于 2021-12-7 15:57
如文件夹下有相同的文件,那就在创建文件夹可以吗?

可以当然可以,关键是你这样做的目的是什么?新建的文件夹名又是什么?多次复制会不会再次陷入我首先提到的无限循环超出限制的问题?
如果你是做文件备份,那应该连源文件的目录结构一起在备份目录创建,这样就能避免同名的问题。
或者在文件名前插入目录结构(替换掉\)也行。
不知道你的用途,无法建议。
 楼主| 发表于 2021-12-7 16:15:13 | 显示全部楼层
本帖最后由 dnvplj 于 2021-12-7 16:20 编辑
afan 发表于 2021-12-7 16:12
可以当然可以,关键是你这样做的目的是什么?新建的文件夹名又是什么?多次复制会不会再次陷入我首先提到 ...

再次感谢A大的回复,是做:文件备份,但只想把文件放到同一文件夹下,如有同名文件就创建新的文件夹,把同名文件分别放到不同的文件夹里。
发表于 2021-12-7 17:19:33 | 显示全部楼层
dnvplj 发表于 2021-12-7 16:15
再次感谢A大的回复,是做:文件备份,但只想把文件放到同一文件夹下,如有同名文件就创建新的文件夹,把 ...

你要坚持你的想法我就不多说了~
Func _FileBakCopy($s_Dir, $a_File)
        Local $sFN, $sBkDir = '', $sNLst = '|'
        For $i = 1 To UBound($a_File) - 1
                $sFN = StringRegExpReplace($a_File[$i], '^.+\\', '')
                If FileExists($s_Dir & '\' & $sFN) Then
                        If $sBkDir = '' Or StringInStr($sNLst, '|' & $sFN & '|') Then $sBkDir = _CKCreateDir($s_Dir)
                        FileMove($s_Dir & '\' & $sFN, $sBkDir)
                EndIf
                $sNLst &= $sFN & '|'
                FileCopy($a_File[$i], $s_Dir)
        Next
EndFunc   ;==>_FileBakCopy
 楼主| 发表于 2021-12-8 09:28:00 | 显示全部楼层
afan 发表于 2021-12-7 17:19
你要坚持你的想法我就不多说了~

非常感谢A大的再次回复,每次我发帖求助都是你不厌其烦的解答和解决我的问题。开始我把问题想的简单了,再次拜读了您2楼和18楼所述,确实是解决问题的最好的办法。
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-12-22 22:12 , Processed in 0.068550 second(s), 14 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表