C#复制文件的2种方法(附带实例)
C# 中在复制文件,可以使用 File 类的 Copy() 方法或者 FileInfo 类的 CopyTo() 方法来实现,下面分别介绍。
例如,调用 File 类的 Copy() 方法将 C 盘根目录下的 Test.txt 文本文件复制到 D 盘根目录下,代码如下:
例如,首先实例化一个 FileInfo 对象,然后使用该对象调用 FileInfo 类的 CopyTo() 方法将 C 盘根目录下的 Test.txt 文本文件复制到 D 盘根目录下,如果 D 盘根目录下已经存在 Test.txt 文本文件,则将其替换,代码如下:
C# File类的Copy()方法
该方法为可重载方法,具有以下两种重载形式:public static void Copy(string sourceFileName, string destFileName) public static void Copy(string sourceFileName, string destFileName, bool overwrite)
- sourceFileName:要复制的文件。
- destFileName:目标文件的名称,不能是目录。如果是第一种重载形式,该参数不能是现有文件。
- overwrite:如果可以改写目标文件,则为 true;否则为 false。
例如,调用 File 类的 Copy() 方法将 C 盘根目录下的 Test.txt 文本文件复制到 D 盘根目录下,代码如下:
File.Copy("C:\\Test.txt", "D:\\Test.txt");
C# FileInfo类的CopyTo()方法
该方法为可重载方法,具有以下两种重载形式:public FileInfo CopyTo(string destFileName) public FileInfo CopyTo(string destFileName, bool overwrite)
- destFileName:要复制到的新文件的名称。
- overwrite:若为 true,则允许改写现有文件;否则为 false。
- 返回值:第一种重载形式的返回值为带有完全限定路径的新文件;第二种重载形式的返回值为新文件,或者如果 overwrite 为 true,则为现有文件的改写,如果文件存在,并且 overwrite 为 false,则会发生 IOException 异常。
例如,首先实例化一个 FileInfo 对象,然后使用该对象调用 FileInfo 类的 CopyTo() 方法将 C 盘根目录下的 Test.txt 文本文件复制到 D 盘根目录下,如果 D 盘根目录下已经存在 Test.txt 文本文件,则将其替换,代码如下:
FileInfo finfo = new FileInfo("C:\\Test.txt"); // 创建文件对象 finfo.CopyTo("D:\\Test.txt", true); // 将文件复制到D盘