| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 610 人关注过本帖
标题:关于移动文件的问题
只看楼主 加入收藏
zhengang1026
Rank: 6Rank: 6
等 级:侠之大者
威 望:1
帖 子:136
专家分:409
注 册:2013-2-6
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:2 
关于移动文件的问题
我想将A文件夹中的一批文件(命名无规律)逐个移到B文件夹中,如果B文件夹中有此文件,即将移过来的文件名加后缀1,如若加缀1后还有则加缀2,依次类推。我该如何用代码实现?请大侠批教。
搜索更多相关主题的帖子: 文件夹 如何 
2013-04-24 08:15
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:364
帖 子:4947
专家分:30084
注 册:2008-10-15
收藏
得分:20 
到窗体上,放 2个 FileblisBox 控件。名字是默认的。第一个是 源文件夹 ,第二个是 目录文件夹。

程序代码:
Option Explicit

Dim path1 As String
Dim path2 As String

Private Sub Command1_Click()
File1.Path = path1                              '文件框2个。
File2.Path = path2

Dim i1 As Long, i2 As Long
Dim s1 As String, s2 As String
Dim fjs As Long
Dim fyes As Boolean


For i1 = 0 To File1.ListCount - 1
    s1 = File1.List(i1)                         '取文件名1
    
    fjs = 0                                     '文件计数初始为0,这个0 不组合到文件名中去
    s2 = s1                                     '初始文件名2
    Do
        fyes = True                             '假设可以直接复制
        For i2 = 0 To File2.ListCount - 1       '遍类所有的文件名
            If s2 = File2.List(i2) Then         '如果同名
                fyes = False                    '不可以直接复制
                fjs = fjs + 1                   '计数+1
                s2 = Left(s1, InStrRev(s1, ".") - 1) & fjs & Mid(s1, InStrRev(s1, "."))     '组合新文件名
                Exit For                        '结束本次遍类
            End If
        Next i2
        
    Loop While Not fyes                         '如果不可以直接复制时继续循环
    
    FileCopy path1 & s1, path2 & s2             '复制文件
    Kill path1 & s1                             '删除文件
    File2.Refresh                               '刷新 文件框2
    
    '注意不要刷新文件框1,否则会导致 FOR 循环出错
Next i1

End Sub

Private Sub Form_Load()
    path1 = "E:\A\"              '路径后面必须带 \ 符号,否则复制文件时报错。可以你自己加错误处理。
    path2 = "E:\B\"
    
End Sub

授人于鱼,不如授人于渔
早已停用QQ了
2013-04-24 09:10
zhengang1026
Rank: 6Rank: 6
等 级:侠之大者
威 望:1
帖 子:136
专家分:409
注 册:2013-2-6
收藏
得分:0 
谢谢版主,今天有事外出没能及时回贴,请原谅。
版主的代码很好能解决我的问题,先谢谢了。
但也有点小问题,就是当B文件夹有同名文件时(有后缀1的同名文件)我的
本意是应更名为加后缀2,但版主的代码却为后缀11,但
瑕不掩瑜。小问题我自己解决。
2013-04-24 21:30
快速回复:关于移动文件的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.030120 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved