একটি ডিরেক্টরির সম্পূর্ণ কন্টেন্ট কপি করার সময়, এর সাব ডিরেক্টরিগুলো এবং সংশ্লিষ্ট ফাইলগুলোও কপি করা অত্যন্ত গুরুত্বপূর্ণ।
উদাহরণ
চলুন একটি ডেমো সোর্স ডিরেক্টরি বিবেচনা করি যাতে সাব ডিরেক্টরি এবং ফাইলগুলো নিচের মত আছে।


নিচে ডেমো টার্গেট ডিরেক্টরি দেওয়া হলো যা প্রাথমিকভাবে খালি।

using System;
using System.IO;
namespace DemoApplication
{
class Program
{
public static void Main()
{
string sourceDirectory = @"d:\DemoSourceDirectory";
string targetDirectory = @"d:\DemoTargetDirectory";
DirectoryInfo sourceDirectoryInfo = new DirectoryInfo(sourceDirectory);
DirectoryInfo targetDirectoryInfo = new DirectoryInfo(targetDirectory);
CopyAll(sourceDirectoryInfo, targetDirectoryInfo);
Console.ReadLine();
}
public static void CopyAll(DirectoryInfo source, DirectoryInfo target)
{
Directory.CreateDirectory(target.FullName);
foreach (FileInfo fi in source.GetFiles())
{
Console.WriteLine(@"Copying {0}\{1}", target.FullName, fi.Name);
fi.CopyTo(Path.Combine(target.FullName, fi.Name), true);
}
foreach (DirectoryInfo diSourceSubDir in source.GetDirectories())
{
DirectoryInfo nextTargetSubDir = target.CreateSubdirectory(diSourceSubDir.Name);
CopyAll(diSourceSubDir, nextTargetSubDir);
}
}
}
}
আউটপুট
উপরের কোডের আউটপুট:

