Verificare e convertire una data - Script ASP
Per verificare se una stringa è riconducibile ad un formato data il motore Vbscript di ASP ci mette a disposizione la funzione [F]IsDate()[/F], che restituisce true in caso affermativo, false se la stringa non contiene un formato data valido.
Lo stesso motore ci fornisce poi diverse funzioni per la conversione, una ad esempio è [F]CDate()[/F] in grado di formattare una espressione in un sottotipo date, comunemente definito in ASP come un formato data.
<%
' Dichiara un array con 3 elementi di prova
Dim strDate(2)
strDate(0) = "22/02/05"
strDate(1) = "February 22, 2005"
strDate(2) = "Una stringa qualsiasi"
Dim i
' Controlla ogni elemento dell'array
for i = 0 to 2
' Se è una data la converte
if IsDate(strDate(i)) then
strDate(i) = Cdate(strDate(i))
Response.Write(strDate(i) & " : convertita correttamente <br />")
else
Response.Write(strDate(i) & " : formato data non valido <br />")
end if
next
%>
Prima di convertire una data è consigliabile verificare che sia un formato valido altrimenti la funzione [F]CDate()[/F] richiamata sul terzo elemento dell'array restituirà un errore.
Nell'esempio sopra abbiamo testato più valori. Ecco uno script semplificato per il controllo.
<%
Dim strDate<
strDate = "22/02/05"
if IsDate(strDate) then
strDate = Cdate(strDate)
Response.Write(strDate & " : convertita correttamente <br />")
else
Response.Write(strDate & " : formato data non valido <br />")
end if
%>
Notare come sia [F]IsDate()[/F] sia [F]Cdate()[/F] interpretino anche stringhe testuali che sono riconducibili ad una data come "February 22, 2005".
Il tipo di stringhe accettato è definito in base alle impostazioni internazionali di sistema del formato di sessione.

