Voilà une synthèse des fonctions de l’on trouve sur le net pour recuperer l’extension d’un fichier.
en asp.net
- Dim fichier As String = « D:\sites\images\image.gif »
- Dim extension As String
- Dim indexPoint As Integer = fichier.LastIndexOf(« . »)
-
- If indexPoint <> -1 Then
- extension = fichier.Substring(index) + 1
- Else
- MsgBox(« Fichier sans extension »)
- End If
en asp
- fichier = « D:\sites\images\image.gif »
- if InStrRev(fichier,« . ») > 0 then
- response.write Mid(fichier,InStrRev(fichier,« . »)+1,len(fichier))
- else
- response.write(« Fichier sans extension »)
- end if
en php
- // Exemple de nom de fichier dont
- // on souhaite récupéré l’extension
- $filename=‘D:\sites\images\image.gif’;
-
- // A ce stade $extension vaudra « .gif »
-
- // Comme le point ne vous intéresse pas
- // forcément on le supprime
- if($extension!==FALSE)
- echo « L’extension du fichier $filename est $extension »;
- else
- echo « Fichier sans extension »;
et en javascript
- var fic = ‘D:\sites\images\image.gif’;
- var tabfic=fic.substring(fic.lastIndexOf(« \\« )+1).split(« . »);
- if (tabfic.length>0)
- var ext = tabfic[tabfic.length-1];
- else
- alert(‘Fichier sans extension’);
Ensuite, vous la comparez à une liste des extension autorisée ou interdite (genre http://www.om-conseil.com/article.php?sid=165 mais attention, cette liste est la liste des extensions que bloque Outlook ce n’est pas forcement la même pour un serveur web par exemple) et votre serveur est protégé.
En asp.net (même en .NET en général), tu peux aussi récuperer l’extension d’un fichier en faisant
System.IO.Path.GetExtension(nomFichier)