PDA

View Full Version : مقاله: فانکشنی برای نمایش اعداد به فارسی



Beyondsoft
دوشنبه 23 شهریور 1388, 21:27 عصر
سلام
اکثراً در نمایش اعداد به فارسی مشکل دارند. فانکشنی که بنده در زیر نوشتم، این مشکل را حل می کند
در واقع اعداد انگلیسی را به فارسی تبدیل می کند

امید وارم تکراری، و غیر کارامد نباشد



string EnNum2Fa(string EnNum)
{
int nLen;
string sFrStr;
nLen = EnNum.Length;

if(nLen ==0 || nLen == null)
{
return EnNum;
}
sFrStr = "";
for (int i = 1 ; i<nLen ; i++)
{
char ch = (char)EnNum[i];
if ( (int)ch <= 57 & (int)ch >= 48)
{
ch = ((char)((int)ch + 1728));
}
sFrStr += ch;

}

return sFrStr;

}

Silverboy
جمعه 23 بهمن 1388, 15:11 عصر
تابع خوبیه فقط اندیس i رو توی حلقه باید از 0 شروع کنی نه 1

mmnoody2006
جمعه 23 بهمن 1388, 18:27 عصر
اینو خودت نوشتی ؟؟؟؟؟؟؟
فکر نکنم من قبلا داشتم :قهقهه:

ali_mnkt
شنبه 24 بهمن 1388, 13:47 عصر
مورد خوبی بود البته قبلا هم این راه حل رو دیده بودم ولی در هز صورت Beyondsoft دستت درد

نکنه . حالا یه سئوال :

اگه ما یه gridview داشته باشیم که از database پر می شه و داخلش اعداد به صورت انگلیسی

پر می شه اون اعداد رو چطوری باید فارسی کرد ؟ یه راهش اینه که با کمک این فانکشن یکی

یکی بریم در هر سطر از gridview ستون هایی که اعداد داخلشون هستش رو به این فانکشن

بدیم و بعد از تبدیل دوباره سر جای خودش بذاریم که به نظر من راه جالبی نیست حالا کسی

راه حل بهتری داره ؟

Beyondsoft
شنبه 24 بهمن 1388, 17:16 عصر
با کمک دستورات jquery میتوان به راحتی به html کد رندر شده دسترسی داشت!
سپس این html کد را پردازش کرد، و کارکتر های عددی مد نظر را به کارکتر های عددی زبان پارسی تغییر وضعیت داد!

ASKaffash
یک شنبه 29 فروردین 1389, 16:13 عصر
سلام
اکثراً در نمایش اعداد به فارسی مشکل دارند. فانکشنی که بنده در زیر نوشتم، این مشکل را حل می کند
در واقع اعداد انگلیسی را به فارسی تبدیل می کند

امید وارم تکراری، و غیر کارامد نباشد



string EnNum2Fa(string EnNum)
{
int nLen;
string sFrStr;
nLen = EnNum.Length;

if(nLen ==0 || nLen == null)
{
return EnNum;
}
sFrStr = "";
for (int i = 1 ; i<nLen ; i++)
{
char ch = (char)EnNum[i];
if ( (int)ch <= 57 & (int)ch >= 48)
{
ch = ((char)((int)ch + 1728));
}
sFrStr += ch;

}

return sFrStr;

}


سلام
حالا این 1728 تا افزایش به یونیکد با همه فونتها تضمین دارد ؟

Beyondsoft
شنبه 04 اردیبهشت 1389, 09:44 صبح
سلام
حالا این 1728 تا افزایش به یونیکد با همه فونتها تضمین دارد ؟

در خواست iso و مهر استاندارد دادیم، تا تضمین بشود، هنوز آماده نشده ... ;)