2010-12-13 43 views
0

Je tente de convertir le format de date RFC822 (de rss) dans un format de date/heure standard en utilisant asp3.RFC822 au format de date en utilisant asp

Merci

+0

* Qu'est-ce que * Avez-vous essayé? Quelles erreurs obtenez-vous? Échantillons et journaux, s'il vous plaît. – DaveE

+0

J'ai essayé cDate (temp) ou année (temp) & "/" & mois (temp) & "/" & jour (temp) – user186585

+0

l'erreur: Type incompatibilité – user186585

Répondre

0

Jetez un coup d'oeil au code source de cette ASP classique RSS reader.

Il existe quelques fonctions géniales impliquant l'utilisation de JScript, qui semblent fonctionner pour vous.

Il semble que vous ayez besoin des fonctions VBScript parseDate et newDate et des deux fonctions JScript.

+0

cela en utilisant CDATE - mais pour une raison quelconque je ne peux pas faire cdate sur ma chaîne fonction privée formatDate (laDate) \t \t d = CDATE (laDate) \t \t formatDate = toUTC (année (d), le mois (d) - 1, jour (d), heure (d), minute (d), deuxième (d)) \t fonction de fin – user186585

0
function RFC822_to_date (orginalDate) 
tempDate = trim(right(orginalDate ,(len(orginalDate)-instr(orginalDate,",")))) 
tempDate = left(tempDate ,(len(tempDate)-5)) 
tempDate = cdate(tempDate) 
RFC822_to_date = day(tempDate)&"-"&month(tempDate)&"-"&year(tempDate)&" "&hour(tempDate)&":"&minute(tempDate)&":00" 
end function 
1

solution Nice - les minutes ne vont pas toujours à deux chiffres si - vous aurez besoin de pad si les minutes sont juste un chiffre (je pense que CDate supprime zéro)

par exemple.

dim theminutes 

...

tempDate = cdate(tempDate) 

if Len(Minute(toReturn))=1 then 
    theminutes = "0" & Minute(toReturn) 
else        
    theminutes = Minute(toReturn) 
end if 
RFC822_to_date = day(tempDate)&"-"&month(tempDate)&"-"&year(tempDate)&" "&hour(tempDate)&":"&theminutes&":00"