System.IO.File.Replace 方法 (String, String, String, Boolean)
方法描述
用其他文件的内容替换指定文件的内容,删除原始文件,并创建被替换文件的备份和(可选)忽略合并错误。
语法定义(C# System.IO.File.Replace 方法 (String, String, String, Boolean) 的用法)
public static void Replace( string sourceFileName, string destinationFileName, string destinationBackupFileName, bool ignoreMetadataErrors )
参数/返回值
参数值/返回值 | 参数类型/返回类型 | 参数描述/返回描述 |
---|---|---|
sourceFileName | System-String | 替换由 destinationFileName 指定的文件的文件名。 |
destinationFileName | System-String | 替换文件的名称。 |
destinationBackupFileName | System-String | 备份文件的名称。 |
ignoreMetadataErrors | System-Boolean | 如果忽略从被替换文件到替换文件的合并错误(如特性和访问控制列表 (ACL)),则为 true,否则为 false。 |
返回值 | void |
提示和注释
Replace 方法用其他文件的内容替换指定文件的内容。 它还创建被替换文件的备份。
如果 sourceFileName 和 destinationFileName 在不同的卷上,此方法将引发异常。 如果 destinationBackupFileName 与源文件位于不同的卷上,则将删除备份文件。
如果不想创建被替换文件的备份,请将 null 传递给 destinationBackupFileName 参数。
System.IO.File.Replace 方法 (String, String, String, Boolean)例子
下面的代码示例使用 Replace 方法,用其他文件替换某个文件并创建被替换文件的备份。
using System; using System.IO; namespace FileSystemExample { class FileExample { public static void Main() { try { string OriginalFile = "test.xml"; string FileToReplace = "test2.xml"; string BackUpOfFileToReplace = "test2.xml.bac"; Console.WriteLine("Move the contents of " + OriginalFile + " into " + FileToReplace + ", delete " + OriginalFile + ", and create a backup of " + FileToReplace + "."); // Replace the file. ReplaceFile(OriginalFile, FileToReplace, BackUpOfFileToReplace); Console.WriteLine("Done"); } catch (Exception e) { Console.WriteLine(e); } Console.ReadLine(); } // Move a file into another file, delete the original, and create a backup of the replaced file. public static void ReplaceFile(string FileToMoveAndDelete, string FileToReplace, string BackupOfFileToReplace) { File.Replace(FileToMoveAndDelete, FileToReplace, BackupOfFileToReplace, false); } } }
异常
异常 | 异常描述 |
---|---|
ArgumentException |
|
ArgumentNullException | destinationFileName 参数为 null。 |
DriveNotFoundException | 指定了无效的驱动器。 |
FileNotFoundException |
|
IOException |
|
PathTooLongException | 指定的路径、文件名或者两者都超出了系统定义的最大长度。 例如,在基于 Windows 的平台上,路径必须小于 248 个字符,文件名必须小于 260 个字符。 |
PlatformNotSupportedException | 操作系统是 Windows 98 Second Edition 或更低版本,且文件系统不是 NTFS。 |
UnauthorizedAccessException |
|
版本信息
.NET Framework 受以下版本支持:4、3.5、3.0、2.0 .NET Framework Client Profile 受以下版本支持:4、3.5 SP1
适用平台
Windows 7, Windows Vista SP1 或更高版本, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008(不支持服务器核心), Windows Server 2008 R2(支持 SP1 或更高版本的服务器核心), Windows Server 2003 SP2 .NET Framework 并不是对每个平台的所有版本都提供支持。有关支持的版本的列表,请参见.NET Framework 系统要求。