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#教程。
