Foros del Web » Programación para mayores de 30 ;) » Java »

Buscador lucene

Estas en el tema de Buscador lucene en el foro de Java en Foros del Web. Hola, estoy haciendo un buscador en lucene. ya tengo creado el indice, el indexar y el buscador. todo funciona correctamente. El buscador me busca correctamente ...
  #1 (permalink)  
Antiguo 09/05/2013, 17:41
 
Fecha de Ingreso: abril-2013
Mensajes: 53
Antigüedad: 10 años, 10 meses
Puntos: 0
Buscador lucene

Hola, estoy haciendo un buscador en lucene. ya tengo creado el indice, el indexar y el buscador. todo funciona correctamente.
El buscador me busca correctamente pero me da el directorio donde esta ese archivo indexado y me gustaría que me diera el articulo que concuerde con esa búsqueda para mostrarla al usuario que a consultado ese tema. este es mi código de buscar, no se como hacerlo.
otra consulta como podría acceder a ese contenido para poder darle formato luego a la hora de mostrarlo (parsearlo).

Código HTML:
import org.apache.lucene.document.Document;
import org.apache.lucene.search.*;
import org.apache.lucene.store.*;
import org.apache.lucene.queryParser.QueryParser;
import org.apache.lucene.analysis.standard.StandardAnalyzer;
import java.io.File;
import java.util.Date;
public class Searcher {
	public static void main(String[] args) throws Exception {
		String[] argsv=new String[2];
		argsv[0]=new String("c:\\indexdir");
		argsv[1]=new String("alimentarias");
		File indexDir = new File(argsv[0]);
		String q = argsv[1];
		if (!indexDir.exists() || !indexDir.isDirectory()) {
			throw new Exception(indexDir + " no existe o no es undirectorio. ");
		}
		search(indexDir, q);
		
		}
	public static void search(File indexDir, String q)throws Exception {
		Directory fsDir = FSDirectory.getDirectory(indexDir, false);
		IndexSearcher is = new IndexSearcher(fsDir);
		Query query = QueryParser.parse(q, "contents",new StandardAnalyzer());
		long start = new Date().getTime();
		Hits hits = is.search(query);
		long end = new Date().getTime();
		System.out.println
		 
		("Se han encontrado " + hits.length() +" documento(s) (en " + (end - start) +" millisegundos) relacionados con la palabra '" +q + "' en los directorios: ");
		for (int i = 0; i < hits.length(); i++) {
			Document doc = hits.doc(i);
			System.out.println(doc.get("filename"));
		}
	}

}

un saludo y gracias

Etiquetas: buscador, lucene, string
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:16.