ASP.NET - como comparar contenido en archivos

 
Vista:

como comparar contenido en archivos

Publicado por Dante (1 intervención) el 20/02/2008 02:01:31
hola
mi problema es el siguiente, tengo unos archivos *.doc en una carpeta y deseo crear un buscador interno, para desplegar el nombre de los archivos.doc que contengan una palabra que ingrese el operador.
esto es más o menos lo que tengo en la pag .aspx

<%@ Import Namespace="System.IO" %>
<script language="VB" runat="server">
Private dir As DirectoryInfo
Private f As FileInfo
Private strDir As string
dim nomarch as string

Sub buscar(obj As object, e As eventargs)

strDir = "d:legajos ormas"
dir = New DirectoryInfo(strDir)

For Each f In dir.GetFiles("*.*")
nomarch = f.name
Dim fs As New FileStream(Server.MapPath(nomarch), FileMode.Open,FileAccess.Read)
Dim objLector As New StreamReader(fs)
??????????
while objLector.Peek() > -1
lblMensaje.Text += Server.HTMLEncode(objLector.ReadLine) & "<br>"
End While
objLector.Close
fs.close
if ?????? then
lblMensaje.Text += f.Name & "<br>"
end if
Next

End Sub

</script>

<html><body>
<h1>Buscador Interno del Sitio</h1>
<form runat="server">
<b>Ingrese Palabra a buscar:</b>
<asp:Textbox id="palabra" runat="server" />
<asp:Button Text="Enviar" runat="server" Onclick="buscar" />
<asp:label id="lblMensaje" runat=server
maintainstate=false />
</form>
</body></html>

con esto logro leer los archivos listar sus nombres y contenidos (aunque si son muy grandes me da un error que me dice que expiro el tiempo) si son cortos no habría problemas aunque no lo probe con gran cantidad de documendos.doc
como veran puedo abrir los archivos lo que no sé, cual es la sentencia que debo utilizar para comparar o comprobar si la palabra que ingrese el usuario esta contenidad en los archivos para que en base a eso si se cumplio esta condicion mediante el if ?????? liste el nombre del archivo, sino pase al proximo.. con ?????? indico donde a mi parecer tendria que escribir el codigo para buscar la palabra y la condicion........pespero haberme explicado bien.
debo aclarar que me estoy iniciando en asp.net asi que mis conocimientos son muy escasos
si alguien puede ayudarme con el codigo que me falta o me puede oritentar sobre como hacerlo, o indicarme si existe alguna otra manera mejor...desde ya le estare muy agradecido...
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:como comparar contenido en archivos

Publicado por Javier Santamaria (312 intervenciones) el 20/02/2008 12:17:13
Hola,

No se si habra algun metodo que busque dentro del texto de un archivo para ver si contiene la palabra/s buscada/s. Si no existe te tocara hacerlo a mano leyendo bloques de caracteres del fichero y comparando con la cadena/s a buscar.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:como comparar contenido en archivos

Publicado por marovi (23 intervenciones) el 20/02/2008 18:25:55
Mira, lo que estas haciendo es volcar el contenido de un archivo a una variable, puedes hacer lo siguiente.

Transforma el contenido a string utilizando tostring() y puego la variable .IndexOfbuscas lo que deseas encontrar

ejemplo

variable.ToString().IndexOf("Dato a buscar")>0 es que existe

Espero que te sirva
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar