آژانس هواپیمایی
pop up

تاريخ فارسی

شروع موضوع توسط melina ‏23 مارس 2003 در انجمن asp , ASP.NET

  1. melina

    melina کاربر تازه وارد

    تاریخ عضویت:
    ‏23 مارس 2003
    نوشته ها:
    39
    تشکر شده:
    0
    چطور میتونم تاریخ میلادی را در asp به تاریخ شمسی تبدیل کنم؟
    با Sql server 2000 کار می کنم و می خواهم تاریخ سیستم را بخوانم و به تاریخ شمسی تبدیل کنم و وارد
    بانک اطلاعاتی کنم.
     
  2. koorosh

    koorosh Registered User

    تاریخ عضویت:
    ‏12 دسامبر 2002
    نوشته ها:
    1,525
    تشکر شده:
    10
    محل سکونت:
    Iran - Tehran
    سلام دوست عزيز
    اينجا رو ببين :
    <a href='http://iranasp.net/Tutorial/Article.aspx?articleid=80' target='_blank'>http://iranasp.net/Tutorial/Article.aspx?articleid=80</a>
    توی همين سايت IranASP.Net چند تا مقاله ديگه در همين زمينه هست.
    اگه مشکلی داشتی در خدمتيم . . .


    بهتره تاريخ رو به همون صورت ميلادی در DB ذخيره کنی و در حين نمايش به خورشيدی تبديل کنی . . .


    خوش باشی . . .



    .
     
  3. weblogger

    weblogger Registered User

    تاریخ عضویت:
    ‏24 دسامبر 2002
    نوشته ها:
    506
    تشکر شده:
    6
    اكثر تبديل تاريخ هايي كه من ديدم در حقيقت بر اساس تاريخ ميلادي كار مي كنند يه فرمول ساده داره
    اگه دقت كني ساده ترين راه اينه كه سال ميلادي رو 2 رقم اولش رو از 21 كم كني و دو رقم بعديش رو با 19 عوض كني كه بايد حالتهاي كبيسه و 2000 به بعد رو با IF حل كني

    مشكل اساسي اينه كه تاريخ خورشيدي دقيقتر از ميلادي هست و تاريخ ميلادي هر 24 سال يك بار خراب مي شه !
     
  4. shahram_arbab

    shahram_arbab کاربر تازه وارد

    تاریخ عضویت:
    ‏5 جولای 2003
    نوشته ها:
    10
    تشکر شده:
    0
    سلام مي توني از کد زير استفاده کني اگر مشکل داشتي بپرس
    Dim modifyDate

    public Function M2SDate(myDate)
    dim ifday,ifmonth,ifYear,ifdayOfyear
    dim iyear,idayOfyear
    dim iNumDayOfyear
    dim aifMonthDays


    aifMonthdays=array(31,31,31,31,31,31,30,30,30,30,30,29)
    iNumDayOFYear =365

    iyear=year(mydate)
    idayOfyear=datepart("Y",mydate)

    if isly(iyear-1) then
    inumdayofyear = 366
    aifmonthday(12)=30
    end if


    IF (IDAYoFyEAR >79) THEN
    ifyear= iyear - 621
    ifdayOfyear = idayOfyear - 79
    ELSE
    ifyear= iyear - 622
    ifdayOfyear = (inumdayofyear - 79) +idayOfyear
    END IF


    ifday = ifdayofyear
    while (ifday > aifmonthdays(ifmonth))
    ifday = ifday - aifmonthdays(ifmonth)
    ifmonth = ifmonth +1
    wend
    ifmonth = ifmonth +1
    M2SDate=ifDay & "/" & ifmonth & "/" & ifyear
    end Function

    function isly(nyear)
    isly= (((nyear Mod 4)=0 And (nyear Mod 100)<>0 ) Or (nyear Mod 400)=0)
    end function

    Sub showfdate(myDate)
    ModifyDate=M2SDate(myDate)
    End Sub