PDA

View Full Version : سوال: عدم کپی شدن فولدری که زیرشاخه هایش کپی شده است



forodo
دوشنبه 16 دی 1392, 13:56 عصر
سلام
با کد تمام فولدرها و فایلهای داخل یک فولدر رو در جای دیگری کپی می کنم ولی مثلاً در اینجا خود فولدر The Fast And The Furious 2 کپی نمی شود.
چطور می توانم کد رو دستکاری کنم که خود اون فایل هم کپی بشود.
این هم بگم که اگر بخواهم مسیر را یک level بالا ببرم اونوقت قسمتهای دیگر این فیلم هم هست.
تابع:

private static void DirectoryCopy(string sourceDirName, string destDirName, bool copySubDirs)
{
// Get the subdirectories for the specified directory.
DirectoryInfo dir = new DirectoryInfo(sourceDirName);
DirectoryInfo[] dirs = dir.GetDirectories();

if (!dir.Exists)
{
throw new DirectoryNotFoundException(
"Source directory does not exist or could not be found: "
+ sourceDirName);
}

// If the destination directory doesn't exist, create it.
if (!Directory.Exists(destDirName))
{
Directory.CreateDirectory(destDirName);
}

// Get the files in the directory and copy them to the new location.
FileInfo[] files = dir.GetFiles();
foreach (FileInfo file in files)
{
string temppath = Path.Combine(destDirName, file.Name);
file.CopyTo(temppath, false);
}

// If copying subdirectories, copy them and their contents to new location.
if (copySubDirs)
{
foreach (DirectoryInfo subdir in dirs)
{
string temppath = Path.Combine(destDirName, subdir.Name);
DirectoryCopy(subdir.FullName, temppath, copySubDirs);
}
}
}

روش استفاده:

private void button1_Click(object sender, EventArgs e)
{
DirectoryCopy(@"E:\Films\Z - Film - Together\Action\The Fast And The Furious\The Fast And The Furious 2", @"D:\aaaaaaa", true);
}

forodo
سه شنبه 17 دی 1392, 10:59 صبح
اگه بخوام یک level به عقب برگردم تمام فولدرهایی رو که داخل The Fast And The Furious این کپی می کنه ولی من وقتی آدرس مبدأ رو بهش می دم می خوام خود فولدر که در اینجا The Fast And The Furious 2 هست هم کپی بشه ولی فولدر و فایلهای داخل اون رو کپی می کنه و خودش رو کپی نمی کنه.

forodo
چهارشنبه 18 دی 1392, 10:31 صبح
وقتی ویندوز کپی که می خوام رو انجام می ده پس با برنامه نویسی می شه این کار رو انجام داد.
می دونم اون غوله ولی این چیزی که من می خوام فکر نمی کنم چیز سختی باشه اگه دوستان کمک کنند.

maythamahmadi
چهارشنبه 18 دی 1392, 14:17 عصر
دوست من شما داری به سی شارپ میگی که زیر پوشه ها رو کپی کنه.


DirectoryCopy(@"E:\Films\Z - Film - Together\Action\The Fast And The Furious\The Fast And The Furious 2", @"D:\aaaaaaa", true);

forodo
چهارشنبه 18 دی 1392, 14:26 عصر
دوست من شما داری به سی شارپ میگی که زیر پوشه ها رو کپی کنه.


DirectoryCopy(@"E:\Films\Z - Film - Together\Action\The Fast And The Furious\The Fast And The Furious 2", @"D:\aaaaaaa", true);

خوب من چطوری حالیش کنم که هم The Fast And The Furious 2 رو کپی کن و هم زیرپوشه هاش رو؟؟؟