フォルダ内のファイル名を変更するには?

解決


困っています  2009-07-23 20:52:21  No: 146100

フォルダ内の全てのファイルの中でファイル名に"_"があるファイル名の"_"を"-"に変更するにはどうすればいいでしょうか?


GOD  2009-07-23 22:52:28  No: 146101

こんな感じ。
拡張子に'_'が含まれていても変換しているので変換したくないときには適当に修正してください。

Dim sFolder As String
Dim intFolderLen As Long
Dim sFNames() As String
Dim sNewFName As String

sFolder = "C:\Test"
intFolderLen = sFolder.Length + 1
If System.IO.Directory.Exists(sFolder) Then
    sFNames = System.IO.Directory.GetFiles(sFolder)
    For intCnt As Integer = 0 To sFNames.Length - 1
        sNewFName = sFolder & "\" & sFNames(intCnt).Substring(intFolderLen, sFNames(intCnt).Length - intFolderLen).Replace("_", "-")
        If sNewFName <> sFNames(intCnt) Then
            System.IO.File.Move(sFNames(intCnt), sNewFName)
        End If
    Next
End If


オショウ  2009-07-23 23:11:58  No: 146102

う〜ん・・・

Imports System.IO

        Dim szFolder As String
        Dim al As ArrayList

        szFolder = "フォルダ名入れて!"

        al = New ArrayList
        al.Clear()

        Dim di As DirectoryInfo

        di = New DirectoryInfo(szFolder)
        For Each fi As FileInfo In di.GetFiles("*_*.xxx")
            al.Add(fi)
        Next

        For Each fi As FileInfo In al
            Dim szNewName As String
            Dim szDir As String
            Dim szFile As String
            Dim szExt As String
            szDir = Path.GetDirectoryName(fi.FullName)
            szFile = Path.GetFileNameWithoutExtension(fi.FullName)
            szExt = Path.GetExtension(fi.FullName)

            szNewName = szFile.Replace("_", "-") + szExt

            My.Computer.FileSystem.RenameFile(fi.FullName, szNewName)
        Next

参考まで・・・


困っています。  2009-07-24 00:02:35  No: 146103

GODさんオショウさん、ありがとうございました。
早速、利用させていただきました。
こんなに早く解決できて感謝、感謝です。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加