آیا راهی هست که توسط بلوک try و catch به صورت تخصصی خطاها رو مدیریت کرد. منظورم از تخصصی اینه که می خوام بتونم روی خطاها شرط داشته باشم. مثلا فرض کنید در ورودی اگر سن کاربر بیشتر از 80 بود خطا بده یا اگر به جای عدد رشته وارد شد خطا بده.
دقت کنید می خوام در بلوک try و catch این موارد انجام بشه نه با if های تو در تو
بله شما می تونید از طریق Exception های اختصاصی که برای بلوک Catch تعریف شده خطاهاتون رو اختصاصی مدیریت کنید. به عنوان مثال کدهای زیر رو دقت کنید :
try
{
int age = Convert.ToInt32(textBox1.Text);
Console.WriteLine($"You are {age} years old");
}
catch (OverflowException ex)
{
//اگر عدد خیلی بزرگی وارد شد وارد این خطا نمایش داده می شود
Console.WriteLine($"age is invalid");
}
catch (FormatException ex)
{
//اگر رشته وارد شد این خطا نمایش داده می شود
Console.WriteLine($"format is invalid");
}
catch (Exception ex)
{
//اگر خطای هندل نشده ای وجود داشت این خطا نمایش داده می شود
Console.WriteLine($"there is an error");
}
همونطوری که ملاحظه می کنید یک بلوک try داریم و سه بلوک catch که در هر بلوک از catch یک حالت خاص از خطا بررسی شده است. بلوک catch آرگومان های زیادی برای مدیریت خطا دارد مانند :
//اگر خطای تقسیم بر صفر رخ داد
catch (DivideByZeroException ex)
//اگر مقداری خارج از محدوده آرایه ثبت یا واکشی شد
catch (IndexOutOfRangeException ex)
//و ...
شما حتی می تونید در بلوک catch از شرط هم استفاده کنید. برای اطلاعات بیشتر لینک زیر رو مطالعه کنید.
تاریخ :
1402/10/30
- ساعت :
05:11:00 PM
- بازدید :
759
- پاسخ :
1
|
تاریخ :
1403/10/13
- ساعت :
09:13:00 PM
- بازدید :
33
- پاسخ :
1
|
تاریخ :
1403/10/13
- ساعت :
08:31:00 PM
- بازدید :
37
- پاسخ :
1
|
تاریخ :
1403/10/13
- ساعت :
12:20:00 PM
- بازدید :
31
- پاسخ :
1
|
تاریخ :
1403/10/12
- ساعت :
11:19:00 PM
- بازدید :
73
- پاسخ :
1
|
تاریخ :
1398/11/03
- ساعت :
06:57:00 PM
- بازدید :
10102
- پاسخ :
1
|
تاریخ :
1403/10/10
- ساعت :
12:44:00 PM
- بازدید :
50
- پاسخ :
1
|
تاریخ :
1398/08/14
- ساعت :
10:54:00 AM
- بازدید :
3020
- پاسخ :
1
|
تاریخ :
1403/10/09
- ساعت :
02:15:00 AM
- بازدید :
52
- پاسخ :
1
|
تاریخ :
1398/09/14
- ساعت :
09:35:00 PM
- بازدید :
8472
- پاسخ :
4
|
تاریخ :
1402/11/04
- ساعت :
02:23:00 PM
- بازدید :
932
- پاسخ :
2
|
تاریخ :
1402/10/30
- ساعت :
05:11:00 PM
- بازدید :
759
- پاسخ :
1
|
تاریخ :
1402/10/25
- ساعت :
08:55:00 AM
- بازدید :
890
- پاسخ :
2
|
تاریخ :
1403/10/14
- ساعت :
05:01:00 PM
- بازدید :
26
- پاسخ :
1
|
تاریخ :
1403/10/13
- ساعت :
09:45:00 PM
- بازدید :
53
- پاسخ :
1
|
تاریخ :
1403/10/13
- ساعت :
09:13:00 PM
- بازدید :
33
- پاسخ :
1
|
تاریخ :
1402/10/30
- ساعت :
09:02:00 AM
- بازدید :
832
- پاسخ :
1
|
تاریخ :
1403/10/13
- ساعت :
08:31:00 PM
- بازدید :
37
- پاسخ :
1
|
تاریخ :
1403/10/06
- ساعت :
09:20:00 PM
- بازدید :
105
- پاسخ :
1
|
تاریخ :
1403/10/13
- ساعت :
12:20:00 PM
- بازدید :
31
- پاسخ :
1
|