C#复制文件教程展示了如何在C#中复制文件。File.Copy
方法将现有文件复制到新文件。该方法在System.IO
命名空间中可用。
C#Copy.File概要
public static void Copy(string sourceFileName, string destFileName);
方法的第一个参数是源文件;第二个参数是目标文件。
public static void Copy(string sourceFileName, string destFileName, bool overwrite);
重载方法有第三个参数:overwrite
。它是一个布尔值,指示目标文件是否可以被覆盖。
C#复制文件示例
以下示例复制磁盘上的文件。
var source = @"C:\Users\Jano\Documents\words.txt"; var destination = @"C:\Users\Jano\Documents\words_bck.txt"; File.Copy(source, destination); Console.WriteLine("File copied");
该示例复制一个文本文件。
var source = @"C:\Users\Jano\Documents\words.txt"; var destination = @"C:\Users\Jano\Documents\words_bck.txt";
我们定义源文件和目标文件。
File.Copy(source, destination);
文件是用File.Copy
方法复制的。
$ dotnet run File copied $ dotnet run Unhandled exception. System.IO.IOException: The file 'C:\Users\Jano\Documents\words_bck.txt' already exists. ...
如果我们运行这个例子两次,我们有一个异常告诉我们文件已经存在。如果我们使用重载方法并将第三个参数设置为true
,目标文件将被覆盖。
C#复制文件示例
在下面的例子中,我们复制了多个文件。
string sourceDir = @"C:\Users\Jano\Documents\"; string backupDir = @"C:\Users\Jano\Documents\backup\"; string[] textFiles = Directory.GetFiles(sourceDir, "*.txt"); foreach (string textFile in textFiles) { string fileName = textFile.Substring(sourceDir.Length); File.Copy(Path.Combine(sourceDir, fileName), Path.Combine(backupDir, fileName), true); } Console.WriteLine("Files copied");
该示例将所有文本文件复制到备份目录。
string[] textFiles = Directory.GetFiles(sourceDir, "*.txt");
我们枚举源目录下的所有文本文件。
foreach (string textFile in textFiles) { string fileName = textFile.Substring(sourceDir.Length); File.Copy(Path.Combine(sourceDir, fileName), Path.Combine(backupDir, fileName), true); }
在foreach
循环中,我们遍历文本文件列表并复制它们。我们使用Substring
方法从绝对路径中截取文件名。Path.Combine
将字符串组合成一个路径。
在本文中,我们使用C#复制了文件。
列出所有C#教程。