You may not realize that
System.IO.File.Move() doesn't support overwriting of an existing file. In fact, it will throw an
IOException if a file with the same path as
sourceDestFilename already exists.
As a workaround to that limitation, I wrote a simple, yet useful wrapper method below that allows for overwriting the destination file.
public static void MoveWithReplace(string sourceFileName, string destFileName)
{
//first, delete target file if exists, as File.Move() does not support overwrite
if (File.Exists(destFileName))
{
File.Delete(destFileName);
}
File.Move(sourceFileName, destFileName);
}