Iniciação HashMaps - Dúvidas

6 respostas
THIAGOANALISTA

Estou fazendo este trabalho e não sei por onde começar!!

Tenho um arquivo . O arquivo contem 1000 arquivos texto, cada um contendo em media 1000 linhas. No entanto nos arquivos existem aproximadamente 20000 palavras diferentes, sendo portanto cada palavra repetida varias vezes em arquivos aleatorios.
O trabalho consiste em buscar nesses arquivos por uma palavra específica. Esta busca deve ser mais rapida que a busca do Microsoft windows e para tanto deve ser implementada utilizando-se um HashMap. Neste hashmap deve utilizar como chave a palavra e como valor uma lista dos nomes dos arquivos que contem aquele palavra. Ao abrir o seu programa vc deve indexar todos os arquivos construindo seu HashMap. Na hora de buscar basta recuperar o elemento do hashmap pela palavra que vc esta procurando, que é a chave e imprimir na tela a lista de arquivos que contem aquela palavra.
Seu programa deve ter uma tela simples na qual eh possivel digitar a palavra que estou procurando um botao para buscar e um local onde o resultado da busca (quais arquivos contem aquela palavra) deve ser mostrado.

6 Respostas

drsmachado

1 - Sabe usar um hashMap?
2 - Sabe usar list ou arrayList?
3 - Sabe usar a classe File?

THIAGOANALISTA

HashMap sim arraylist sim, só não consigo fazer tipo file, iniciante!

lucasirc

da uma olhada aqui

http://www.guj.com.br/articles/13

ViniGodoy

Não era mais fácil então perguntar como faz para ler um arquivo?

Você pode usar o Scanner:

Scanner scan = new Scanner(new File("C:\arquivo.txt")); while (scan.hasNextLines()) { String linha = scan.nextLine(); //Processa a linha } scan.close();

Para listar todos os arquivos de um diretório, use o método listFiles, da classe File.

THIAGOANALISTA

Coloque a descrição do que foi pedido, sim, é para abrir e listar o conteudo e criar um hashpmap e consultar os valores deles;

bruno.fantin

Cara, isso é algum trabalho de facul? Se não, usa o Lucene e seja feliz.

Criado 1 de julho de 2011
Ultima resposta 1 de jul. de 2011
Respostas 6
Participantes 5