Closed
Description
سلام و خسته نباشید.
تغییر ماه و سال میتونه مقدار تاریخ نهایی رو به اشتباه بیاندازد.
اگر به صورت زیر مقادیر shDay, shMonth رو تغییر بدیم تاریخ خروجی به خطا میافته.
val persianDate = PersianDate()
val pdformater = PersianDateFormat()
persianDate.shMonth = 1
persianDate.shDay = 31
persianDate.shMonth = 12
text = pdformater.format(persianDate)
خروجی نهایی تاریخ به صورت :
پنجشنبه 31 اسفند 1401
خواهد بود که اشتباه است ولی انتظار میرود خروجی به صورت:
پنجشنبه 29 اسفند 1401
باشه.
برای حل این مشکل میتونیم هنگام تغییر ماه و سال (درسال های کبیسه) مقدار روز رو وقتی که بیش از تعداد روز های ماه است به آخرین روز تغییر بدیم