File.Replace(字符串,字符串,字符串)是一个内置的 File 类方法,用于将指定目标文件的内容替换为源文件的内容,然后删除源文件并创建替换文件的备份。
用法:
public static void Replace (string sourceFileName, string destinationFileName, string destinationBackupFileName);
参数:此函数接受三个参数,如下所示:
- sourceFileName: This is the specified source file.
- destinationFileName: This is the specified destination file whose contents get replaced with the contents of the source file.
- destinationBackupFileName: This file contains the backup of replaced destination file’s content.
异常:
- ArgumentException:destinationFileName 参数描述的路径不是合法形式。或者 destinationBackupFileName 参数描述的路径不是合法形式。
- ArgumentNullException:destinationFileName 参数为空。
- DriveNotFoundException:指定的驱动器无效。
- FileNotFoundException:找不到当前 FileInfo 对象描述的文件。或者找不到destinationBackupFileName 参数描述的文件。
- IOException:打开文件时发生 I/O 错误。或 sourceFileName 和 destinationFileName 参数指定相同的文件。
- PathTooLongException:指定的路径,文件名或两者都超过了system-defined的最大长度。
- PlatformNotSupportedException:操作系统是Windows 98 Second Edition 或更早版本,文件系统不是NTFS。
- UnauthorizedAccessException:sourceFileName 或 destinationFileName 参数指定只读文件。 OR 当前平台不支持此操作。 OR 源或目标参数指定目录而不是文件。或者调用者没有所需的权限。
下面是说明 File.Replace(String, String, String) 方法的程序。
程序1:在运行下面的代码之前,已经创建了三个文件,其中源文件是file1.txt,目标文件是file2.txt,备份文件是file3.txt。这些文件的内容如下所示-
C#
//C#程序来说明用法
//File.Replace(String, String, String) 方法
//使用 System 和 System.IO 命名空间
使用系统;
使用 System.IO;
类 GFG {
公共静态无效 Main()
{
//指定3个文件
字符串源文件名 = "file1.txt";
字符串目标文件名 = "file2.txt";
字符串 destinationBackupFileName = "file3.txt";
//调用 Replace() 函数
File.Replace(源文件名,目标文件名,
目标备份文件名);
Console.WriteLine("更换过程已经完成。");
}
}
输出:
Replacement process has been done.
运行上述代码后,显示如上输出,源文件被删除,剩下的两个文件的内容如下所示——
程序2:在运行以下代码之前,已经创建了两个文件,其中源文件是 file1.txt,目标文件是 file2.txt 并且没有备份文件,因为我们不想保留替换文件的备份。这些文件的内容如下所示-
C#
// C# program to illustrate the usage
// of File.Replace(String, String, String) method
// Using System and System.IO namespaces
using System;
using System.IO;
class GFG {
public static void Main()
{
// Specifying 2 files
string sourceFileName = "file1.txt";
string destinationFileName = "file2.txt";
// Calling the Replace() function with
// null parameter inplace of backup file because
// we do not want to keep backup of the
// replaced file.
File.Replace(sourceFileName, destinationFileName, null);
Console.WriteLine("Replacement process has been done.");
}
}
输出:
Replacement process has been done.
运行上述代码后,显示如上输出,源文件被删除,目标文件内容如下所示——
相关用法
- C# File.Replace(String, String, String, Boolean)用法及代码示例
- C# File.Copy(String, String)用法及代码示例
- C# File.AppendAllText(String, String)用法及代码示例
- C# File.AppendAllText(String, String, Encoding)用法及代码示例
- C# File.WriteAllText(String, String)用法及代码示例
- C# File.WriteAllText(String, String, Encoding)用法及代码示例
- C# File.WriteAllLines(String, String[], Encoding)用法及代码示例
- C# File.WriteAllLines(String, String[])用法及代码示例
- C# File.WriteAllLines(String, IEnumerable<String>, Encoding)用法及代码示例
- C# File.WriteAllLines(String, IEnumerable<String>)用法及代码示例
- C# File.Copy(String, String, Boolean)用法及代码示例
- C# File.AppendAllLines(String, IEnumerable<String>, Encoding)用法及代码示例
- C# File.AppendAllLines(String, IEnumerable<String>)用法及代码示例
- C# File.Create(String, Int32, FileOptions, FileSecurity)用法及代码示例
- C# Int16.Parse(String)用法及代码示例
- C# Int32.Parse(String)用法及代码示例
- C# Int64.Parse(String)用法及代码示例
- C# UInt16.Parse(String)用法及代码示例
- C# UInt32.Parse(String)用法及代码示例
- C# UInt64.Parse(String)用法及代码示例
- C# String.Split()用法及代码示例
- C# File.Open(String, FileMode, FileAccess)用法及代码示例
- C# File.Open(String, FileMode, FileAccess, FileShare)用法及代码示例
注:本文由纯净天空筛选整理自Kanchan_Ray大神的英文原创作品 File.Replace(String, String, String) Method in C# with Examples。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。