C# File.Copy(string sourceFileName, string destFileName):复制指定文件

  • Post category:C#

C#中的File.Copy方法

File.Copy方法是C#中System.IO命名空间下的静态方法,可以将指定源文件的内容复制到目标文件中。拥有两个参数,分别为源文件名以及目标文件名。

方法语法

public static void Copy(string sourceFileName, string destFileName);

方法参数

  • sourceFileName:需要复制的源文件名(包括路径)。
  • destFileName:将要创建的目标文件名(包括路径)。

方法异常

在使用File.Copy方法时,可能出现以下异常:

  • ArgumentException:源文件名或目标文件名之一为空字符串。
  • ArgumentNullException:源文件名或目标文件名为NULL。
  • PathTooLongException:源文件名或目标文件名的长度超过操作系统允许的最大长度。
  • DirectoryNotFoundException:源文件所在路径无法找到。
  • FileNotFoundException:源文件不存在。
  • IOException:目标文件已经存在(当overwrite参数为false时)。
  • NotSupportedException:源文件名、目标文件名或某些参数中的路径无效。
  • UnauthorizedAccessException:源文件为只读或被其他进程占据,或无法获取足够的权限,或目标文件被打开或存储在只读目录中。

方法示例

示例一

在下面的示例中,我们将复制位于sourceFileName路径下的文件到destFileName路径下一份。

string sourceFileName = @"C:\test\source.txt";
string destFileName = @"D:\test\dest.txt";

File.Copy(sourceFileName, destFileName);

示例二

在下面的示例中,我们将先检查目标文件是否存在,如果存在则先删除目标文件,然后再将源文件复制到目标文件中。

string sourceFileName = @"C:\test\source.txt";
string destFileName = @"D:\test\dest.txt";

if (File.Exists(destFileName))
{
    File.Delete(destFileName);
}

File.Copy(sourceFileName, destFileName);

注意:使用File.Copy方法时应该先检查源文件和目标文件是否存在,以确保操作的合法和正确。