Verificando palavras contidas em um arquivo txt através de outro utilizando Java

Olá pessoal…

Hoje vou mostrar uma função desenvolvida em Java, que através de dois arquivos txt, procura palavras repetidas, contidas (por exemplo, do arquivo 2 no arquivo 1) utilizando ArrayList.

Linguagem Java

Linguagem Java

Abaixo o conteúdo do Arquivo 1:

Daniel Atilio
Teste 1 Teste 2
Teste Novo
Terminal

Abaixo o conteúdo do Arquivo 2:

Daniel Terminal
Atilio

E abaixo um print da execução com as palavras repetidas nos dois arquivos.

Palavras repetidas nos arquivos - Java

Palavras repetidas nos arquivos – Java

Código completo desenvolvido:

import java.util.List;
import java.util.ArrayList;

import java.io.File;
import java.io.FileReader;
import java.io.BufferedReader;
import java.util.Formatter;

public class compArq { 
	public static List  oPalavrasArq1 = new ArrayList();
	
	//Funcao que carrega as palavras do Arquivo 1 para a Lista Encadeada (juntamente com a funcao addPalavra)
	private static void carregaPalavras() {
		String LinAtu = "";
		File fArq = new File("arquivo1.txt");
		String palavra = "";
		
		if (fArq.exists()){
			try{
				FileReader     fReader = new FileReader("arquivo1.txt");
				BufferedReader rLeitor = new BufferedReader(fReader);
				
				while ((LinAtu=rLeitor.readLine())!=null){
					if (LinAtu.contains(" ")) {
						while (LinAtu.contains(" ")){
							palavra = LinAtu.substring(0,LinAtu.indexOf(" "));
							LinAtu = LinAtu.substring(LinAtu.indexOf(" ")+1,LinAtu.length());
							addPalavra(palavra);
							
							if (!(LinAtu.contains(" "))) {
								addPalavra(LinAtu);
							}
						}
					}
					else{
						addPalavra(LinAtu);
					}
				}
			}
			catch(Exception eEx){
				System.out.println("Houveram erros no carregamento dos dados: "+eEx);
			}
		}
	}
	
	//Funcao que compara a lista encadeada do Arquivo 1, com o Arquivo 2
	private static void comparaArq2() {
		int fim = oPalavrasArq1.size();
		int atu = 0;
		String LinAtu = "";
		File fArq = new File("arquivo2.txt");
		String palavra = "";
		
		if (fArq.exists()){
			try{
				FileReader     fReader = new FileReader("arquivo2.txt");
				BufferedReader rLeitor = new BufferedReader(fReader);
				
				while ((LinAtu=rLeitor.readLine())!=null){
					for(atu=0;atu

Obrigado ao Marcial Luis pela sugestão de postagem.

Bom pessoal, por hoje é só.
Abraços e até a próxima.

Dan (Daniel Atilio)
Cristão de ramificação protestante. Especialista em Engenharia de Software pela FIB, graduado em Banco de Dados pela FATEC Bauru e técnico em informática pelo CTI da Unesp. Entusiasta de soluções Open Source e blogueiro nas horas vagas. Autor e mantenedor do portal Terminal de Informação.

2 Responses

Deixe uma resposta

Terminal de Informação