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 IsDate, 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 è CDate 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 CDate 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 IsDate sia Cdate 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.

