RFC822 für RSS-Feed

  • Hat einer von euch eine Ahnung wie man ein RFC822 konformes Datum schnell mit Autoit erzeugen kann? Es sollte für einen Feed so aussehen:

    <pubDate>Wed, 02 Oct 2002 15:00:00 +0200</pubDate>


    Mein Ansatz war: _DateTimeFormat(_NowCalc(), 1)


    Es kommt aber das heraus: <pubDate>Monday, 8. July 2013 +0200</pubDate>


    • Offizieller Beitrag

    Ich habe mal was gescriptet:

    [autoit]


    #include <Date.au3>

    [/autoit][autoit][/autoit][autoit]

    $sDate = _DateToRFC822()
    ConsoleWrite($sDate & @CR)

    [/autoit][autoit][/autoit][autoit]

    Func _DateToRFC822()
    Local $tLocalTime = _Date_Time_GetLocalTime(), $aLocalTime = _Date_Time_SystemTimeToArray($tLocalTime)
    Local $tSystemTime = _Date_Time_GetSystemTime(), $aSystemTime = _Date_Time_SystemTimeToArray($tSystemTime)
    Local $sRFC822Date = StringFormat('<pubDate>%s, %02d %s %4d %02d:%02d:%02d %+03d00</pubDate>', _DateDayOfWeek($aLocalTime[7] + 1, 1), $aLocalTime[1], _DateToMonth($aLocalTime[0], 1), $aLocalTime[2], $aLocalTime[3], $aLocalTime[4], $aLocalTime[5], $aLocalTime[3] - $aSystemTime[3])
    $tLocalTime = ''
    $tSystemTime = ''
    Return $sRFC822Date
    EndFunc

    [/autoit]
  • Besten Dank! Mit einer kleinen zusätzlichen Änderung hat es geklappt, denn der kurze Monat Juli ist nicht Jul, sondern July.

    Code
    #include <Date.au3>
    $sDate = _DateToRFC822()MsgBox(0,$sDate,$sDate)
    Func _DateToRFC822()    Local $tLocalTime = _Date_Time_GetLocalTime(), $aLocalTime = _Date_Time_SystemTimeToArray($tLocalTime)    Local $tSystemTime = _Date_Time_GetSystemTime(), $aSystemTime = _Date_Time_SystemTimeToArray($tSystemTime)    Local $sRFC822Date = StringFormat('<pubDate>%s, %02d %s %2d %02d:%02d:%02d %+03d00</pubDate>',_DateDayOfWeek($aLocalTime[7] + 1, 1), $aLocalTime[1], StringLeft(_DateToMonth($aLocalTime[0], 1),3), $aLocalTime[2], $aLocalTime[3], $aLocalTime[4], $aLocalTime[5], $aLocalTime[3] - $aSystemTime[3])    $tLocalTime = ''    $tSystemTime = ''    Return $sRFC822DateEndFunc


    Kennst du dich denn mit dem RFC822 Zeug aus? Ich hätte da noch ein Sonderzeichenproblem in URLs. So etwas wie hier in Java, gibt es bei Autoit nicht zufällig:

    http://www.w3.org/International/O-URL-code.html


    ??