کپی کردن فایل های یک دایرکتوری به مسیری دیگر در سی شارپ
گاهی اوقات در پروژه سی شارپ خود لازم است که یک سری فایل را بتوانید در مسیری مشخص کپی کنید . برای اینکار از کد زیر می توانید استفاده کنید .
ابتدا فضای نام زیر را به برنامه اضافه کنید
using System.IO;
سپس از کد یر استفاده کنید
FolderBrowserDialog FolderBrowserDialog1 = new FolderBrowserDialog(); FolderBrowserDialog1.Description = "Find Folder to Copy."; if (FolderBrowserDialog1.ShowDialog() == DialogResult.OK) { string[] files = Directory.GetFiles(FolderBrowserDialog1.SelectedPath); Directory.CreateDirectory(@"C:\CopiedFolder"); for (int i = 0; i < files.Length; i++) { string tmpFileExt = Path.GetExtension(files[i]); string tmpFileName = Path.GetFileNameWithoutExtension(files[i]); File.Copy(files[i], @"C:\CopiedFolder\" + tmpFileName + tmpFileExt, true); } }
برای اینکه کد بالا را داینامیک تر کنید می توانید علاوه بر انتخاب پوشه ای که می خواهید فایل های آن کپی شوند ، می توانید مسیر مقصد را نیز از طریق تنظیمات برنامه یا یک کنترل FolderBrowserDialog مشخص کنید .
ممنون که برای من وقت گذاشتید ولی با عرض پوذش باید بگم که من میخوام بدون استفاده از تابع File.Copy عمل کپی فایلها و پوشه ها رو انجام بدم
من کههم شما تو کد خودتون و هم تو این لینکی که برام فرستادید از تابع File.Copy استفاده کردید.
میدونم این روشش هست ولی استادمون گفته باید بدون استفاده از این تابع بتونید فای ها و پوشه های یک پوشه رو به پوشه دیگه کپی کنید
ممنون میشم کمکم کنید
خواهش میکنم… ممنون میشم سوالتونو توی بخش پرسش و پاسخ مطرح بفرمایید
روش دیگه ای رو میخوام که توش از File.Copy استفاده نشده باشه
فکر کنم این لینک به دردتون بخوره
http://www.csharp411.com/c-copy-folder-recursively/
سلام ممنون استفاده کردم
حالا اگر تو این پوشه پوشه هایی باشه که بخوام اونها هم کپی بشن چگار باید کرد؟
ممنون
سلام، خواهش می کنم
اینم خدمت شما
http://stackoverflow.com/questions/1066674/how-do-i-copy-a-folder-and-all-subfolders-and-files-in-net