Question

Je suis un peu crapuleux en ce moment & # 8230;

J'ai une chaîne de date au format européen jj.mm.yyyy et je dois la transformer en mm.dd.yyyy avec un ASP classique. Des idées rapides?

Était-ce utile?

La solution

Si c'est toujours dans ce format, vous pouvez utiliser split

d = split(".","dd.mm.yyyy")
s = d(1) & "." & d(0) & "." & d(2)

cela permettrait également des dates telles que 1.2.99

Autres conseils

Dim arrParts() As String
Dim theDate As Date

arrParts = Split(strOldFormat, ".")
theDate = DateTime.DateSerial(parts(2), parts(1), parts(0))

strNewFormat = Format(theDate, "mm.dd.yyyy")

OK, je viens de trouver une solution moi-même:

payment_date = MID(payment_date,4,3) & LEFT(payment_date,3) & MID(payment_date,7)

C’est un moyen de le faire avec un contrôle de cohérence intégré pour les dates:

Dim OldString, NewString

OldString = "31.12.2008"

Dim myRegExp
Set myRegExp = New RegExp
myRegExp.Global = True
myRegExp.Pattern = "(0[1-9]|[12][0-9]|3[01])[- /.](0[1-9]|1[012])[- /.]((19|20)[0-9]{2})"

If myRegExp.Test Then
    NewString = myRegExp.Replace(OldString, "$2.$1.$3")
Else
    ' A date of for instance 32 December would end up here
    NewString = "Invalid date"
End If

J'ai mes propres fonctions de manipulation des dates que j'utilise dans toutes mes applications, mais elles étaient à l'origine basées sur cet exemple:

http://www.adopenstatic.com/resources/code/formatdate.asp

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top