+4 امتیاز
سلام.

چه جوری میشه تاریخ شروع و پایان هفته ی جاری رو به شمسی و میلادی بدست آورد؟!

پروژه‌ای که دارم کار می‌کنم امکانی در گزارش‌گیری داره که کاربر با کلیک بر روی یک دکمه، گزارشی رو در اون بازه مشاهده می‌کنه! (مثلاً امروز، هفته ی جاری، ماه جاری، سال جاری!)

2 پاسخ

+4 امتیاز

سلام ،

به کد زیر دقت کنید :

 DateTime startingDate = DateTime.Now.AddDays(-1 * (int)DateTime.Now.DayOfWeek);
            DateTime endingDate = startingDate.AddDays(7);
            DateTime now = DateTime.Now;

            Console.WriteLine("Current Date : " + now.ToString("yyyy/MM/dd"));
            Console.WriteLine("Current week starting date : " + startingDate.ToString("yyyy/MM/dd"));
            Console.WriteLine("Current week ending date : " + endingDate.ToString("yyyy/MM/dd"));

            Console.ReadKey();

برای تبدیل تاریخ به شمسی هم کتابخانه های خوبی در اینترنت موجود هست مانند Behcomponent

+3 امتیاز
    using System.Data.SqlClient;//برای تقویم فارسی
using System.Globalization;//کتابخانه کار با تاریخ ********  

//دریافت زمان فعلی و نمایش به صورت فارسی
        public string showdate(DateTime date, Boolean shortdate)
        {
            string[] week = { "شنبه", "یکشنبه ", "دوشنبه ", "سه شنبه ", "چهارشنبه ", "پنجشنبه", "جمعه" };
            string[] months = { "فروردین", "اردیبهشت", "خرداد", "تیر", "مرداد", "شهریور", "مهر", "آبان", "آذر", "دی", "بهمن", "اسفند" };
            short d = 0;
            DateTime a = date;
            DayOfWeek tempdayofweek = a.DayOfWeek;
            switch (tempdayofweek)
            {
                case DayOfWeek.Saturday: d = 0; break;
                case DayOfWeek.Sunday: d = 1; break;
                case DayOfWeek.Monday: d = 2; break;
                case DayOfWeek.Tuesday: d = 3; break;
                case DayOfWeek.Wednesday: d = 4; break;
                case DayOfWeek.Thursday: d = 5; break;
                case DayOfWeek.Friday: d = 6; break;
            }
            int day = int.Parse(a.Day.ToString());
            int month = int.Parse(a.Month.ToString());
            int year = int.Parse(a.Year.ToString());
            year = (year == 0) ? 2000 : year;
            if (year < 1000)
            { year += 2000;/*:true;*/}
            year -= ((month < 3) || ((month == 3) && (day < 21))) ? 622 : 621;
            switch (month)
            {
                case 1: if (day < 21) { month = 10; day += 10; } else { month = 11; day -= 20; } break;
                case 2: if (day < 20) { month = 11; day += 11; } else { month = 12; day -= 19; } break;
                case 3: if (day < 21) { month = 12; day += 9; } else { month = 1; day -= 20; } break;
                case 4: if (day < 21) { month = 1; day += 11; } else { month = 2; day -= 20; } break;
                case 5:
                case 6: if (day < 22) { month -= 3; day += 10; } else { month -= 2; day -= 21; } break;
                case 7:
                case 8:
                case 9: if (day < 23) { month -= 3; day += 9; } else { month -= 2; day -= 22; } break;
                case 10: if (day < 23) { month = 7; day += 8; } else { month = 8; day -= 22; } break;
                case 11:
                case 12: if (day < 22) { month -= 3; day += 9; } else { month -= 2; day -= 21; } break;
                default: break;
            }
            if (shortdate != true)
            {
                return (week[d] + " " + day + " " + months[month - 1] + " " + year);
            }
            else
            {
                string smonth = "", sday = "";
                if (month >= 1 && month <= 9)
                {
                    smonth = "0" + month.ToString();
                }
                else
                {
                    smonth = month.ToString();
                }
                if (day >= 1 && day <= 9)
                {
                    sday = "0" + day.ToString();
                }
                else
                {
                    sday = day.ToString();
                }
                return (year + "/" + smonth + "/" + sday);
            }
        }

سلام . میتونید از کلاس بالا استفاده کنید

 

 

DateTime tody = DateTime.Now;//زمان فعلی را میگیرد
            clas.showdate(tody, false);
            string a = clas.showdate(tody, false);
            labelX1.Text = a;

 

توسط (1,666 امتیاز) 8 21 78
سوال جدید

2,337 سوال

2,871 پاسخ

3,725 دیدگاه

3,924 کاربر

دسته بندی ها

...