我需要互换2个文件C#

问题描述:

我想互换2个文件。我试图做到这一点,但它不工作。该文件正在替换,但不创建备份文件。你有其他解决方案吗?我需要互换2个文件C#

File.Replace(newLocation,defualtSource, newLocation); 
+3

尝试File.Copy,然后File.Move? – 2013-05-14 13:08:52

+2

您对Replace的调用基本上意味着“将defualtSource备份到newLocation,*然后将newLocation复制到defualtSource”,您是否看到此问题? – Patrick 2013-05-14 13:10:45

+0

你真的在传递sourceFileName和destinationBackupFileName参数的路径吗?如果是这样,那将解释问题。您需要为所有三个参数提供不同的路径。 – 2013-05-14 13:12:13

File.Move("file1.txt", "temp.txt"); 
File.Move("file2.txt", "file1.txt"); 
File.Move("temp.txt", "file2.txt"); 

为什么更换不应该工作,但是,我不明白。你确定你正在使用它吗?

File.Replace的第三个参数是备份文件的路径。你确定你将正确的参数传递给Replace方法吗?

有关要传递参数的示例,请参阅http://msdn.microsoft.com/en-us/library/9d9h163f.aspx上的示例。

如果你想换2个档,请检查下面的例子:

 const string file1Folder = "D:\\File1"; 
     const string file1 = "file1.txt"; 
     const string file2Folder = "D:\\File2"; 
     const string file2 = "file2.txt"; 

     var file1Filename = Path.Combine(file1Folder, file1); 
     var file1Destination = Path.Combine(file2Folder, file1); 

     var file2Filename = Path.Combine(file2Folder, file2); 
     var file2Destination = Path.Combine(file1Folder, file2); 

     File.Move(file1Filename, file1Destination); 
     File.Move(file2Filename, file2Destination); 

如果你只是想交换两个文件,你可以使用File.Replace的文本,检查例子here