آخرین نسخه :
LatstRelease_FarhaniPersianDate.zip
اضافه شده در تاریخ 30 تیرماه 91
---------------------------------------------------------
اینم یه dll برای شما دوستان که با تاریخ فارسی مشکل دارین .
از مزایای این dll که خودشتو متمایز میکنه اینه که شما میتونید فرمت خروجی را براش مشخص کنید .
لطفا اشکلاتشو بم بگید تا اصلاحش کنم .
متدها و نحوه استفاده
توضیح هرکدوم از متدها و ویژگیها در خود کلاس گذاشته شده ولی با این حال یه توضیح کوچیک میدم .
تعریف کلاس و نمونه سازی از آن
C#
farhaniPersianDate.cDate perDate=new farhaniPersianDate.cDate();
VB
Dim preDate as new farhaniPersianDate.cDate()
به صورت پیش فرض پس نمونه سازی از کلاس تاریخ جاری سیستم با فرمت yyyy/mm/dd به فارسی تبدیل می شود
خاصیت ها
این خاصیتها فقط قابلیت خواندن را دارند.
Year = نمایش سال به صورت عددی
Month = نمایش ماه به صورت عددی
Day = نمایش روز به صورت عددی
dayDateName = نمایش روز به صورت فارسی ( یکم ، دوم ، ..... ، سی ام )
DayName = نمایش نام روز ( شنبه ، یکشنبه ، دوشنبه )
monthName = نمایش نام ماه : بهمن
yearFarsi = نمایش سال به صورت حرفی ( یک هزارو سیصدو هشتادو شش )
separatorChar
برای جداکننده بین قسمت های مختلف
C#
perDa.separatorChar='*'
VB
perDa.separatorChar="*"
نمونه ایی از خروجی : 20*10*1386
displyFormat
شما با استفاده از این خاصیت میتوانید نحوه نمایش خروجی را تعیین کنید که به شرح زیر می باشد
YY ,yy
برای نمایش عدد سال استفاده میشه -> 1386
YYYY,yyyy
برای نمایش حرفی سال استفاده میشه -> یک هزارو سیصدو هشتادو شش
MM
برای نمایش نام ماه : بهمن
mm
برای نمایش ماه : 10
dn
برای نمایش نام روز : شنبه
dd
برای نمایش روز : 20
DD
برای نمایش روز به صورت حروف : بیستم
/
برای گذاشتن جداکننده که در خاصیت جداکننده تنظیم شده است
نمونه فرمت تنظیم شده: "امروز:;dn;DD;MM;سال;YYYY"
خروجی : امروز : پنجشنبه بیستم بهمن سال یک هزارو سیصدو هشتادو شش
C#
perDate.displyFormat = "امروز:;dn;DD;MM;سال;YYYY";
VB
perDate.displyFormat = "امروز:;dn;DD;MM;سال;YYYY"
توابع
fulDate
تابعی برای کامل کردن تاریخ
یعنی اگر شما تاریخی را به این صورت وارد کنید 1/1/86 خروجی تابع به صورت 01/01/1386 می باشد ، البته با توجه به جداکننده تاریخ
getPersianDate
این تابع که 4 بار سر بار گذاری شده است برای تبدیل تاریخ استفاده می شود .
خروجی کلیه این تابع ها رشته ای است که با فرمت مورد نظر خود تنظیم کردیداید
1- getPersianDate()
تاریخ جاری سیستم را به شمسی تبدیل میکند
2- getPersianDate(DateTime miladiDate)
یک ورودی از نوع تاریخ میلادی گرفته و آن را به شمسی تبدیل میکند
3- getPersianDate(String strMiladiDate)
یک وردی از نوع رشته که مقدار آن یک تاریخ میلادی است را به شمسی تبدیل میکند
4- getPersianDate(int iYear, int iMonth, int iDay)
سه ورودی از نوع عددی که شامل سال ، ماه ، روز میلادی می باشد و تبدیل آن به صورت شمسی
isfulDate(String strDate)
این تابع بررسی میکند که آیا تاریخ وارد شده کامل است یا نه
isValidDete
این تابع بررسی میکند که آیا تاریخ وارد شده معتبر است یا خیر
موارد بررسی شده : معتبر بودن اعداد ( یعنی اینکه برای روز بین 1 تا 31 و ماه 1 تا 12)
بررسی 31 روزه بودن شش ماه اول و 30 روز شش ماه دوم
بررسی سال کبیسه برای ماه 12 که باید 29 روز در صورت کبیسه بودن 30 نیز مجاز می باشد .
نکته : رشته ای که در توابع fullDate,isFullDate,isValidDate وارد میشه حتماً باید با جداکننده آن با آنچه که تعیین شده برابر باشد.
RevrseDate
این تابع 2 بار سر بارگذاری شده است که به برای تغییر جهت نمایش استفاده میشه ، این تابع بیشتر زمانی استفاده میشود که شما دسترسی با کلاس نداشته باشید و حتی نمونه ای از آن ساخته نشده است . و میخواهید تاریخ مورد نظر بر عکس نمایش داده شود .
مثلاً اگر دقت کرده باشید در بعضی مواقع با توجه به اینکه چیدمان (align) Label و یا Text و ... تنظیم هست تاریخ مورد نظر شما بر عکس نمایش داده میشود به این شکل 1386/01/01 برای این کار شما میتوانید از این تابع استفاده کنید .
در ضمن یکی از جاهایی که خیلی برای من مهم بود در گرید ها بود که به راحتی میتوانید از این تابع استفاده کنید
سر بار گذاری های انجام شده بر اساس نوع ورودی به رشته (String) و شئ (Object) صورت گرفته است
نکته : شما میتوانید برای نمایش بر عکس تاریخ فرمت آن را بر عکس تنظیم کنید.
این تابع همانطور که در بالا اشاره کردم بیشترین کاربرد را در استفاده آن در گرید ها دارد .
showInDisplyFormat (String strDate)
این تابع تاریخ وارد شده را بر اساس قالب تنظیم شده نمایش می دهد .
نکته : با توجه به جداکننده باید رشته ورودی تنظیم شود.
نوع
perDayWeek
این نوع شمارشی روز های هفته است .
----
فایل مستند XML آن هم برای استفاده از توابع در کنار dll وجود دارد
امیدوارم که به دردتون بخوره