Exercício

Boa tarde galera!
Sou iniciando em desenvolvimento e preciso resolver um exercício em Java:

Ao se informar um arquivo texto, ler este arquivo e fazer uma estatística informando:

  • Quantidade de linhas;
  • Quantidade de palavras;
  • Quantidade de caracteres.

Considerando que este arquivo texto que você criou tenha no mínimo 10.000 caracteres, informar também as vezes em que acontece a ocorrência da palavra “de”, e também da palavra “para”. A contagem deve ser para todas as palavras que tenham caracteres maiúsculos ou minúsculos.

Além disto, criar um arquivo de saída dividindo as frases em linhas, considerando dos “.” (Pontos) que existem. Por exemplo, esta frase tem 3 pontos e portanto será dividia em 3 linhas.

OBS.: Pode ser algum trecho de algum site de jornal).

Alguem poderia me auxiliar? Sou iniciante e estou meio perdido.
Agradeço desde já!

Você conhece alguma coisa do pacote java.io ?

Comece aprendendo a ler o arquivo:

1 curtida

Comece fazendo uma coisa de cada vez, que fica fácil.

  1. Implemente a contagem das linhas;
  2. Implemente a contagem das palavras (dá pra fazer a cada linha);
  3. Implemente a contagem dos caracteres (dá pra fazer pra cada palavra);
  4. Implemente a contage da palavra “de” (dá pra fazer a cada linha);
  5. Implemente a contage da palavra “para” (dá pra fazer a cada linha);
  6. Implemente a divisão das frases em linhas.

Estou lendo assim:

public static void main(String[] args) {
		Path caminho = Paths.get("C:/Users/leonardo.lovato/Desktop/Exercicio/arq.txt");
		try {
			byte [] texto = Files.readAllBytes(caminho);
			String leitura = new String(texto);
			
			JOptionPane.showMessageDialog(null, leitura);
			
		} catch(Exception erro) {
			System.out.println("Erro ao ler o arquivo");
	}

}
}

Certo ? Só estou com dificuldade de fazer a contagem de linhas/palavras e caracteres.

Obrigado cara, vou tentar ir por essa linha de raciocínio.

Se ler o arquivo através de um BufferedReader, você pode ler linha a linha através do método readLine().
Ou se for através de um Scanner, pode ler linha a linha através do método nextLine().

1 curtida

Resolvido! Obrigado à todos!