نمایش نتایج 1 تا 9 از 9

نام تاپیک: کم کردن روز، هفته، ماه از تاریخ شمسی

  1. #1
    کاربر دائمی آواتار morika
    تاریخ عضویت
    اسفند 1386
    محل زندگی
    کرج
    سن
    33
    پست
    736

    Question کم کردن روز، هفته، ماه از تاریخ شمسی

    سلام
    من یه تاریخ شمسی تو برنامه دارم (PersianCalendar) حالا می خوام یه روز یا یه هفته ازش کم کنم. چطوری باید این کارو انجام بدم؟
    ممنون

  2. #2

    نقل قول: کم کردن روز، هفته، ماه از تاریخ شمسی

    من توی این کد یک زمان که string هست را بهش نسبت دادم امیدوارم به دردت بخوره
    string s = patient.birthDay;
    FreeControls.PersianDate d = new FreeControls.PersianDate(Convert.ToInt32(s.Substri ng(0, 4)), Convert.ToInt32(s.Substring(5, 2)), Convert.ToInt32(s.Substring(8, 2)));
    dateBirthDay.Value = d;

  3. #3
    کاربر دائمی آواتار morika
    تاریخ عضویت
    اسفند 1386
    محل زندگی
    کرج
    سن
    33
    پست
    736

    نقل قول: کم کردن روز، هفته، ماه از تاریخ شمسی

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

  4. #4

    نقل قول: کم کردن روز، هفته، ماه از تاریخ شمسی

    خوب 7 روز کم کن و دوباره به روش بالا ست کن.

  5. #5
    کاربر دائمی آواتار morika
    تاریخ عضویت
    اسفند 1386
    محل زندگی
    کرج
    سن
    33
    پست
    736

    نقل قول: کم کردن روز، هفته، ماه از تاریخ شمسی

    خب مشکل همینه دیگه. چجوری 7 روز کم کنم؟ با کدوم تابع؟ همینجوری که نمیشه منهای 7 کردش

  6. #6

    نقل قول: کم کردن روز، هفته، ماه از تاریخ شمسی

    تاریخ رو به datetime تبدیل و از متد addDays استفاده کنید آخر سر دوباره به شمسی تبدیل کنید:
                DateTime dTime = new DateTime(1391, 09, 15, new PersianCalendar());
    dTime.AddDays(-7);

  7. #7
    کاربر دائمی آواتار morika
    تاریخ عضویت
    اسفند 1386
    محل زندگی
    کرج
    سن
    33
    پست
    736

    نقل قول: کم کردن روز، هفته، ماه از تاریخ شمسی

    راستش من هرکاری می کنم نمیشه. میشه لطف کنین یه نمونه کد بزارین؟ همه این کارارو می کنم ولی در نهایت این dTime هیچ تغییری نمیکنه. اصلا تاریخش هم به میلادی میزاره دوباره. بودن و نبودن اون add.days هم هیچ تاثیری توش نداره.
    من با این کد تاریخ رو شمسی می کنم:
    PersianCalendar PerCal = new PersianCalendar();
    string Year, Day, Month;
    int date;
    Year = PerCal.GetYear(DateTime.Now).ToString();
    Month = PerCal.GetMonth(DateTime.Now).ToString();
    Day = PerCal.GetDayOfMonth(DateTime.Now).ToString();
    Day = (Day.Length == 1) ? "0" + Day : Day;
    Month = (Month.Length == 1) ? "0" + Month : Month;
    return date = Convert.ToInt32(Year + Month + Day);

  8. #8
    کاربر دائمی آواتار morika
    تاریخ عضویت
    اسفند 1386
    محل زندگی
    کرج
    سن
    33
    پست
    736

    نقل قول: کم کردن روز، هفته، ماه از تاریخ شمسی

    با این کد درست شد
    PersianCalendar PerCal = new PersianCalendar();
    int lastday;
    return lastday = PerCal.GetDayOfMonth(DateTime.Now.AddDays(-1));

  9. #9

    نقل قول: کم کردن روز، هفته، ماه از تاریخ شمسی

    public
    متد برای تبدیل دیت تایم به تاریخ شمسی می باشد static string ChangeCalander(DateTime dt)
    {
    string StDate = "";
    System.Globalization.PersianCalendar pcal = newPersianCalendar();
    string strMonth = pcal.GetMonth(dt).ToString();
    string strDay = pcal.GetDayOfMonth(dt).ToString();
    int Month = pcal.GetMonth(dt);
    if (Month < 10)
    {
    strMonth = "0" + pcal.GetMonth(dt).ToString();
    }
    int Day = pcal.GetDayOfMonth(dt);
    if (Day < 10)
    {
    strDay = "0" + pcal.GetDayOfMonth(dt).ToString();
    }
    return StDate = pcal.GetYear(dt).ToString() + '/' + strMonth + '/' + strDay;
    }
    این متد برای تبدیل تاریخ شمسی به دیت تایم می باشد public static DateTime ToDateTime(string date)
    {
    PersianCalendar pcal = newPersianCalendar();
    return pcal.ToDateTime(int.Parse(date.Substring(0, 4)), int.Parse(date.Substring(5, 2)), int.Parse(date.Substring(8, 2)), 0, 0, 0, 0);
    }
    این متد اصلي است تاريخ را به فارسی بدهید و تعداد روزهایی که می خواهید کم شود اگر می خواهید روز اضافه کنید یا روز را منفی بدهید یا اون منفی داخل متد را بردارید public static string ShowDayBefore(string date,int day)
    {
    DateTime dt=newDateTime();
    dt = ToDateTime(date);
    string output = "";
    PersianCalendar pcal = newPersianCalendar();
    return ChangeCalander(pcal.AddDays(dt, -1 * day));

    }


تاپیک های مشابه

  1. پاسخ: 13
    آخرین پست: جمعه 16 مرداد 1388, 01:46 صبح
  2. پیدا کردن تاریخ های بین دو تاریخ شمسی
    نوشته شده توسط na3er-faraji در بخش SQL Server
    پاسخ: 13
    آخرین پست: شنبه 23 تیر 1386, 07:55 صبح
  3. تبدیل تاریخ شمسی به روز و ماه
    نوشته شده توسط armin2005 در بخش برنامه نویسی با زبان C و ++C
    پاسخ: 2
    آخرین پست: دوشنبه 06 شهریور 1385, 11:04 صبح
  4. پاسخ: 6
    آخرین پست: چهارشنبه 02 آذر 1384, 12:43 عصر

قوانین ایجاد تاپیک در تالار

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