Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

xanburzum

[Resolvido] Localizar arquivos

Recommended Posts

busca de arquivos usando seu navegador da Web em vez de encontrar arquivos. Este arquivo ASP buscas em seu disco rígido (ou web Servidor) de arquivos contendo um determinado strING. Você pode especificar uma string de pesquisa e para o diretório de pesquisa na (ou deixe o padrão c: \ diretório).

 

 

<%@LANGUAGE="VBSCRIPT"%>
   <%
   Response.AddHeader "Pragma", "No-Cache" 
   Response.CacheControl = "Private"  
	server.scripttimeout = 300  
   %>
   <HTML>
   <HEAD><TITLE>Localizar arquivos</TITLE>
   <style>
   body {font:10pt Arial;background-color:papayawhip;color:antiquewhite;font-weight:bold;margin-top:0px;margin-left:0px;margin-right:0px}
   A:link {color:black;text-decoration:none}
   A:hover {color:red;text-decoration:underline}
   A:visited {color:black;text-decoration:none}
   td {color:black;border-bottom:1pt solid black;font:9pt Arial}
   th {color:black;border-bottom:1pt solid black;font:9pt Arial;font-weight:bold}
   </style>
   </HEAD>
   <BODY>
   <DIV style="background-color:tan">
   <CENTER>
   Find Files<BR>
   <%
   Dim filecounter, searchtext, directory 'dimensão variáveis
   Dim fcount, fsize
   filecounter = 0	'filecounter inicializar a zero
   searchtext = Trim(request("SearchText")) 'obter o querystring SearchText
   directory = Trim(request("Directory"))  'obter o querystring
Directory
   if directory = "" Then directory = "c:\" 
'se não Defina o diretório para c: \ 

Search Form To the page
   response.write "<FORM action='FindFiles.asp' method=get>Search For:" & _
	" <INPUT type=text name=SearchText size=20 value=" & Chr(34) & searchtext & _
	Chr(34) & "> Mudar Diretório: <INPUT type=text name=Directory size=20 value=" & _
	Chr(34) & directory & Chr(34) & "> <INPUT style='background-color:blanchedalmond;" & _
	"color:chocolate' type=submit value='Iniciar Search '></FORM><BR></DIV>"
   if searchtext <> "" Then 
' Se houver um arquivo de pesquisa para a pesquisa

   response.write "<TABLE border=0 width='100%'>"
   response.write "<TR><TH width='60%'>Nome Arquivo</TH><TH width='10%'>File Size</TH><TH width='30%'>Data Modificação</TH></TR>"
	 'cria o objeto recordset Para armazenar 
	'o filepath, filename, filesize e última modificação Data
   Set rs = createobject("adodb.recordset")
   rs.fields.append "FilePath",200,255
	 rs.fields.append "FileName",200,255
   rs.fields.append "FileSize",200,255
	 rs.fields.append "FileDate",7,255
   rs.open
	Recurse directory ' chamada a subrotina para percorrer os diretórios
	Sub Recurse(Path)
	  ' file system object
	 Dim fso, Root, Files, Folders, File, i, FoldersArray(1000)
	 Set fso = Server.CreateObject("Scripting.FileSystemObject")
	 Set Root = fso.getfolder(Path)
	 Set Files = Root.Files
	 Set Folders = Root.SubFolders
	 fcount = 0   
'zero fora do arquivo contar variável 
	'percorrer através dos subdiretórios no diretório atual	

 For Each Folder In Folders
	  FoldersArray(i) = Folder.Path
	  i = i + 1
	 Next
	 'percorrer através dos arquivos na pasta atual ou subpasta
	 For Each File In Files
	 'verificar se a string de pesquisa é encontrado
	  num = InStr(UCase(File.Name), UCase(searchtext))
	 'Então, se for atualizar o recordset e se classificar
	  if num <> 0 Then
	  filecounter = filecounter + 1
	  rs.addnew
	 rs.fields("FilePath") = File.Path
	  rs.fields("FileName") = File.Name
	  rs.fields("FileSize") = File.Size
	  rs.fields("FileDate") = File.DateLastModified
	  rs.update
	 rs.Sort = "FileName ASC"
	  End if
	 Next
	  'recurse através do diretório atual até 
	'Todas as subpastas tenham sido percorridos

	 For i = 0 To UBound(FoldersArray)
	  if FoldersArray(i) <> "" Then 
	   Recurse FoldersArray(i)	
	  Else
	   Exit For
	  End if
	 Next
	End Sub
   'Então, se os arquivos foram encontrados escrever-lhes que o documento
	if filecounter <> 0 Then
	  filecounter = 0
	 Do While Not rs.eof
	  filecounter = filecounter + 1
	  response.write "<TR><TD width='50%' valign=top><A href=""" & rs.fields("FilePath") & """>" & rs.fields("FileName") & "</TD><TD width='10%' align=right valign=top>"

	 'obter o tamanho do arquivo, de modo a podermos 
	'Atribuir o bom Bytes, KB ou MB valor

	   fsize = CLng(rs.fields("FileSize"))
	  'se esta for inferior a 1 kbs então é Bytes
	  if fsize >= 0 And fsize <= 999 Then
	   fnumber = FormatNumber(fsize,0) & " Bytes"
	  End if
	 'caso 1 KB mas menos 1 MB Depois então atribuir KB
	  if fsize >= 1000 And fsize <= 999999 Then
	   fnumber = FormatNumber((fsize / 1000),2) & " KB"
	  End if
	   'caso 1 MB ou mais Depois atribuir MB
	  if fsize >= 1000000 Then
	   fnumber = FormatNumber((fsize / 1000000),2) & " MB"
	  End if
   'Cada arquivo e escrever info correspondente ao documento
	  response.write fnumber & "</TD><TD width='30%' align='center'>" & rs.fields("FileDate") & "</TD></TR>"
	  rs.movenext
	 Loop
	 response.write "</TABLE>" 'final table
	Else
	 Não foram encontrados arquivos
	End if
   End if
   %>
   </BODY>
   </HTML>

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.