PDA

View Full Version : معادل isnumber



na3er-faraji
شنبه 12 تیر 1389, 10:22 صبح
معادل تابع IsNumber در C# چیست ؟

s.khoshfekran
شنبه 12 تیر 1389, 10:26 صبح
char.IsNumber

na3er-faraji
شنبه 12 تیر 1389, 10:37 صبح
با این تابع فقط میشه یک کاراکتر رو چک کرد. فرض کنید یک تکست باکس داریم که میخایم تمام متن ورودی رو چک کنیم و ببینیم عدده یا نه ؟ باید چیکار کنیم؟

s.khoshfekran
شنبه 12 تیر 1389, 10:42 صبح
private bool IsNumber(string Text)
{
bool Number= false;
for (int i = 0; i < Text.Length; i++)
{
if (char.IsNumber(Text, i))
{
Number = true;
}
else
{
Number = false;
}
}
return Number;
}

sia_2007
شنبه 12 تیر 1389, 15:39 عصر
http://barnamenevis.org/forum/attachment.php?attachmentid=52220&stc=1&d=1278159621

vandermond
دوشنبه 04 مرداد 1389, 11:45 صبح
دوست عزيز
كدي كه sia_2007 گفت درسته و راحت. من هم يه كد ميزارم كه آشنا بشيد.

long Num = 0;
bool isNumber = long.TryParse(InfixInput, out Num);

FastCode
جمعه 08 مرداد 1389, 21:44 عصر
دوست عزيز
كدي كه sia_2007 گفت درسته و راحت. من هم يه كد ميزارم كه آشنا بشيد.

long Num = 0;
bool isNumber = long.TryParse(InfixInput, out Num);
درسته.
ولی باید توجه داشته باشید که isnumber از double استفاده میکنه.

Sajjad.Aghapour
جمعه 08 مرداد 1389, 21:45 عصر
كدي كه sia_2007 گفت درسته و راحت. من هم يه كد ميزارم كه آشنا بشيد.

ایشون از Extension Methods استفاده کردن....

sia_2007@
لطفا برای اینکه ابهامی به وجود نیاد و موجب سوالات بعدی شود توضیحی در مورد کد خود میدادید...

موفق باشید/

vandermond
جمعه 08 مرداد 1389, 22:30 عصر
درسته.
ولی باید توجه داشته باشید که isnumber از double استفاده میکنه.
خب به جاي long.TryParse ميتونيد بزنيد: double.TryParse و اولش هم Num رو double تعريف كنيد. همين:لبخندساده:

FastCode
جمعه 08 مرداد 1389, 22:33 عصر
خب به جاي long.TryParse ميتونيد بزنيد: double.TryParse و اولش هم Num رو double تعريف كنيد. همين:لبخندساده:


منم همین رو گفتم.گفتک که درسته.
در ضمن فکر میکنم که بدون اعشار توی برنامه های حسابداری که این روزها زیاد نوشته میشن بیشتر کاربرد داشته باشه.

sia_2007
شنبه 09 مرداد 1389, 10:20 صبح
خیلی سادست
این یه متده که به کلاس String اظافه شده.
در اولین پارامتر ارسالی که میگوییم this String ؛ یعنی متد به هر چی String هست اظافه بشه.
فقط مواظب باشین؛ اگه نویسنده اون کلاس که این جا String و Developer های خود Net. هستند؛
یک متد IsNumber اظافه کنند؛ کد شما بی هیچ اخطاری کار نمیکنه. در واقع Silent Rebinding رخ میده.
بعدش هم گفتیم اگه Null هست یا Empty ؛ دیگه عدد نیست.
بعدش هم یه کوئری LINQ هستش؛ که شرط مورد نظر رو که بهش پاس کردیم رو روی تمومی عناصر آرایه پیاده سازی میکنه.
و در صورتی که همه True برگردونند؛ جواب نهایی هم True خواهد بود.
در پایان هم یه Sample نوشتم.