sábado, 19 de julho de 2003

Pega extensão do arquivo II

<%
'-----------------------------------------
' Função: Verifica se a extensão é válida
' Autor: Régis Soares
' E-mail:
regis_soares@hotmail.com
' Data De Criação: 19/07/2003
' Para Usar:
' arquivo = Nome do arquivo
' extensoes = Extensões permitidas
'   separadas por vírgula
' Exemplo:
' IsExtension("figura.jpg","jpg,gif,bmp")
'-----------------------------------------
Function IsExtension(arquivo,extensoes)
 aExts = Split(extensoes,",")
 erro = True
 For i = LBound(aExts) To UBound(aExts)
  If Trim(LCase(aExts(i))) = LCase(Mid(arquivo, InStrRev(arquivo,".")+1)) Then
   erro = False
  End If
 Next
 If Not erro Then
  IsExtension = True
 Else
  IsExtension = False
 End If
End Function
%>
<%= IsExtension("figura.jpg","jpg,gif,bmp")%>
<%
'----------------------------------
' Função: Pega Extensão
' Autor: Régis Soares
' E-mail:
regis_soares@hotmail.com
' Data De Criação: 19/07/2003
'----------------------------------
Function GetExtension(arquivo)
 If Len(InStrRev(arquivo, ".")) > 0 Then
  If Len(Mid(arquivo, InStrRev(arquivo, "."))) > 1 Then
   GetExtension = Mid(arquivo, InStrRev(arquivo, "."))
  End If
 End If
End Function
%>
<%= GetExtension("figura.jpg")%>


Esta matéria foi postada originalmente no ASP4Developers por Régis da Silva Soares, que na época era "Programador ASP e PHP". Hoje, vai saber...

3 comentários:

Thiago Machado Souza disse...

[Enviado originalmente em 23/jul/2003 09:15:22]:

E se o arquvo se chamar

asp.for.developers.txt

existem uns xaropes que fazem isso mesmo ou até deixam sem extensão.

acho legal tratar isso com split(var,".") e pegar o ultimo valor da array.

Régis da Silva Soares disse...

[Enviado originalmente em 24/jul/2003 21:19:50]:

O InStrRev já faz isso.
Teste a função.

Régis da Silva Soares disse...

[Enviado originalmente em 24/jul/2003 21:21:57]:

Seria legal usar as duas funções em conjunto.
If IsExtension("arq.txt")
GetExtension("arq.txt")
Else
Response.Write "Arquivo inválido"
End If