tags:

views:

64

answers:

3

Hi. Is There any Function For changing a file extension in .NET? Or i have to rename a file? thanks

For Example I want to rename each file in a directory with ".resxx" extension to .resx. what is the problem with my code?

Dim [option] As SearchOption = SearchOption.AllDirectories [option] = SearchOption.AllDirectories

    Dim fileNames As String() = Directory.GetFiles("C:\New Folder", "*.resxx", [option])
    For Each f In fileNames
        Dim t As New FileInfo(f.ToString)
        MsgBox(Mid(f, 1, f.Length - 4))
        t.MoveTo(Mid(f, 1, f.Length - 4) + ".resx")
    Next
+1  A: 

Changing the file extension of a file is renaming the file.

Delan Azabani
+2  A: 

Yes there is: Path.ChangeExtension

In fact the Path class in general has a whole range of useful file/directory name manipulation methods. It's surprising how many developers don't know about it/use it.

Ash
A: 

Solved. Thanks All. :)

Dim [option] As SearchOption = SearchOption.AllDirectories
    [option] = SearchOption.AllDirectories
    Dim files As String()
    files = Directory.GetFiles("C:\New Folder", "*.resxx", [option])
    Dim filepath_new As String
    For Each filepath As String In files
        filepath_new = filepath.Replace(".resxx", ".resx")
        System.IO.File.Move(filepath, filepath_new)
    Next
shaahin