如何批量去掉文件夹中带数字的TXT文件名中的数字
如d:\wj\abb123.txt      abc124.txt  批量改成   abb.txt   abc.txt

解决方案 »

  1.   

    怎样取得各级子目录下的文件名(包含全路径)
    上个帖子 VB 如何将文本文件名中的数字去掉,假定你已经封装成函数 RemoveNumber()
    Dim colFiles As Collection
    Dim i As Long
    Dim s1 As String
    Dim s2 As String
    Set colFiles = SearchFiles("D:\wj\","*.txt")
    For i = 1 To colFiles.Count
        s1 = colFiles(i)
        s2 = RemoveNumber(s1)
        If s1 <> s2 Then
            Name s1 As s2
        End If
    Next
      

  2.   

    晕,你上次问一个的,现在又问“批量”的,自己不会“转个弯弯”啊!
    Private Sub Command1_Click()
       Dim strPath As String
       Dim strName As String
       Dim strTemp As String
       Dim i As Long   strPath = "D:\wj\"      ' 路径最后要有 \
       strTemp = Dir$(strPath & "*.txt")
       Do
          If (strTemp = "") Then Exit Do
          strName = strTemp
          For i = 0 To 9
             strName = Replace(strName, i, "")
          Next
          If (strName <> strTemp) Then
             Name strPath & strTemp As strPath & strName
          End If
          strTemp = Dir$()
       Loop
    End Sub
      

  3.   

    如果楼主只关心功能实现我可以推荐楼主一个工具XRename,对于这个问题一行命令就解决了,简洁高效易懂。
    XRename.exe  delete -dir d:\wj\ -string /\d+/g
    XRename介绍:http://blog.csdn.net/sysdzw/article/details/6198257本问题完全解决流程:http://blog.csdn.net/sysdzw/article/details/50499279XRename的相关命令:
      

  4.   

    其实慢慢看下去还是挺简单的。
    控制台下的命令不也是一个个学的么。
    上面这个命令如果在当前要处理的目录下更短。看起来就像一句自然英语。。
    XRename.exe  delete -dir d:\wj\ -string /\d+/g   ‘等价于
    xrename delete -string /\d+/g
      

  5.   

    vb能完成的话用vb就好啦
    完成不了才用命令行吧