PDA

View Full Version : عدم نمایش ارور در صورت عدم کپی شدن فایلها!



sogoli
سه شنبه 17 اسفند 1389, 19:40 عصر
من با دستورات زیر مراحل انتقال یک فایل رو از یک داریو به درایو دیگر انجام میدهم:

string fileName = "x.mdb";
string sourcePath = System.Windows.Forms.Application.StartupPath;
//string sourcePath = @"C:\";
string targetPath = @"c:";
string sourceFile = System.IO.Path.Combine(sourcePath, fileName);
string destFile = System.IO.Path.Combine(targetPath, fileName);
System.IO.File.Copy(sourceFile, destFile, true);


حال سوالم این هست که اگر در هر صورتی این عمل یعنی کپی شدن ، بدرستی انجام نشود ، پیغام یا اروری ظاهر نشود ؟ یعنی چه کپی شد چه نشد، اتفاقی نیافتد؟

unknown.unforgiven
سه شنبه 17 اسفند 1389, 20:39 عصر
سلام
جای علامت سوالات ابهام دارن، اون چیزی که من از حرفت فهمیدم اینه که یه کاری بکنی که اگه فایل به هر دلیلی کپی نشد برنامه خطا نده و ازش در نیاد. اگه میخوای این کار رو بکنی کد بالا رو با این یکی کد عوض کن
try
{
string fileName = "x.mdb";
string sourcePath = System.Windows.Forms.Application.StartupPath;
//string sourcePath = @"C:\";
string targetPath = @"c:";
string sourceFile = System.IO.Path.Combine(sourcePath, fileName);
string destFile = System.IO.Path.Combine(targetPath, fileName);
System.IO.File.Copy(sourceFile, destFile, true);
}
catch (Exception exp)
{
}
اگر منظورت چیز دیگه ای بود بگو تا ببینم میتونم کمکت بکنم یا نه

mehranmsba
سه شنبه 17 اسفند 1389, 20:41 عصر
از try و catch استفاده کن و در قسمت catch هیچی ننویس:

try{
string fileName = "x.mdb";
string sourcePath = System.Windows.Forms.Application.StartupPath;
//string sourcePath = @"C:\";
string targetPath = @"c:";
string sourceFile = System.IO.Path.Combine(sourcePath, fileName);
string destFile = System.IO.Path.Combine(targetPath, fileName);
System.IO.File.Copy(sourceFile, destFile, true);
}
catch{
//اینجا می تونی یه پیغام بدی یا هیچی ننویسی

}


موفق باشید

mehranmsba
سه شنبه 17 اسفند 1389, 20:44 عصر
موقعی که من داشتم جواب می دادم unknown.unforgiven جواب داد می تونید به ساعت ارسال ها نگاه کنید.

unknown.unforgiven
سه شنبه 17 اسفند 1389, 20:54 عصر
موقعی که من داشتم جواب می دادم unknown.unforgiven جواب داد می تونید به ساعت ارسال ها نگاه کنید.
خوب مگه کسی چیزی گفت؟ در ضمن اینجا قرار نیست مسابقه بدیم که کی زود جواب میده، کی دیر. اینجا قراره به سوالات دوستان جواب بدیم. تو این یه مورد چون دوستمون برنامشون رو گذاشته بودن برنامه ها به صورت اتفاقی عین هم شدن و کسی هم با این موضوع مشکلی نداره

mehranmsba
چهارشنبه 18 اسفند 1389, 21:44 عصر
نه منظور من این نبود دوست عزیر. می خواستم بگم که این یک خطا در بازه زمانیه نه چیز دیگه . (چون دو تا پست عین هم پشت هم بود)

موفق باشید.