Ricavare l'estensione di un file - Script ASP
Nell'esempio vedremo come ricavare l'estensione di un qualsiasi file usando le funzioni di ASP.
Lo script può essere agevolmente combinato con altri esempi in questa sezione che usino il File System Object, ad esempio per richiamare tutti i file di una cartella e mostrare solo quelli con una determinata estensione.
Per semplicità il codice seguente è confezionato in una funzione , per essere agevolmente richiamato ed utilizzato.
E' da notare come per ottenere l'estensione di un file potrebbe sembrare sufficiente tagliare il valore della variabile alle ultime 3 cifre, ma non sempre l'estensione ha tale lunghezza.
Esistono ad esempio pagine .html e .htm o file .pl e .cgi.
<%
function GetFileExtension(fileName)
if InStr(fileName, ".") > 0 then
GetFileExtension = "." & Right(fileName, Len(fileName) - InStrRev(fileName, "."))
else
GetFileExtension = ".tmp"
end if
end function
%>
La funzione sopra utilizza l'istruzione [F]InstrRev()[/F] per verificare la presenza di un punto a partire da destra verso sinistra restituendone la posizione.
Con le funzioni [F]Len()[/F] e [F]Right()[/F] ricaviamo la lunghezza della stringa e tagliamo dinamicamente la lunghezza per ottenere solo l'estensione.
<% strFile = "pagina.html" strEstensione = GetFileExtension(strFile) Response.Write(strEstensione) %>
L'output del codice sopra fornisce come risultato il valore .html.
Nel caso il file non presenti estensione sarà associato di default un valore .tmp adattabile alle esigenze.

