Contador de caracteres, palavras e linhas de um arquivo
Publicado por Reginaldo de Matias (última atualização em 06/11/2011)
[ Hits: 19.501 ]
Homepage: http://mundodacomputacaointegral.blogspot.com/
O presente programa em Java conta quantos caracteres, palavras, linhas de um arquivo informado por linha de comando.
Execução
[reginaldo@saitam ~]javac Contador.java
[reginaldo@saitam ~]cat teste
Teste de execução do aplicativo Java que conta quantos caracteres, palavras, linhas de um arquivo.
[reginaldo@saitam ~]java Contador teste
Arquivo:teste
Número de caracteres: 98
Número de palavras: 15
Número de linhas: 1
/*Objetivo desse script Java é contar quantos caracteres, palavras, linhas de um arquivo informado via linha de comando compilar: javac Contador.java executar: java Contador nomearquivo1 nomearquivo2 nomearquivoN*/ import java.io.*; public class Contador{ private static void contaLinhas(String arquivo, BufferedReader in) throws IOException{ long numerocaracteres=0; long numerolinhas=0; long numeropalavras=0; String linha; do{ linha = in.readLine(); if(linha != null){ numerocaracteres += linha.length(); numeropalavras += contaPalavras(linha); numerolinhas++; } }while(linha != null); System.out.println("Arquivo:" +arquivo); System.out.println("Número de caracteres: " +numerocaracteres); System.out.println("Número de palavras: " +numeropalavras); System.out.println("Número de linhas: " +numerolinhas); } private static void contaLinhas(String arquivo){ BufferedReader in = null; try{ FileReader file = new FileReader(arquivo); in = new BufferedReader(file); contaLinhas(arquivo,in); }catch(IOException e){ e.printStackTrace(); } } private static long contaPalavras(String linha){ long numeropalavras=0; int indice = 0; boolean espacoembranco = true; while(indice < linha.length()){ char c = linha.charAt(indice++); boolean espacoembrancoatual = Character.isWhitespace(c); if(espacoembranco && !espacoembrancoatual){ numeropalavras++; } espacoembranco = espacoembrancoatual; } return numeropalavras; } public static void main(String[] args){ long numerocaracteres=0; long numeropalavras=0; long numerolinhas=0; String linha; if(args.length < 1){ System.out.println("Utilização: java Contador <arquivo> [...]"); return; } try{ if(args.length == 0){ BufferedReader in = new BufferedReader(new InputStreamReader(System.in)); linha = in.readLine(); numerocaracteres = linha.length(); if(numerocaracteres != 0){ numerolinhas=1; } System.out.println("Numero de caracteres: " +numerocaracteres); System.out.println("Numero de palavras: " +contaPalavras(linha)); System.out.println("Numero de linhas: " +numerolinhas); } else{ //System.out.println("Foram passados" +args.length+ "parametros"); for(int i=0; i<args.length; i++){ contaLinhas(args[i]); } } }catch(IOException e){ e.printStackTrace(); } }//fim do main }//fim da classe
Ordenação de vetores com letras do alfabeto
Pequeno algoritmo para determinar se um número é primo ou não entre 1 e 10000
Ordenação de vetores com letras do alfabeto (atualizado)
Nenhum comentário foi encontrado.
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Flatpak: remover runtimes não usados e pacotes
Mudar o gerenciador de login (GDM para SDDM e vice-versa) - parte 2
Inkscape Atualização 1.4 [RESOLVIDO] (8)
samba4 - 4.21 utilizar phpldapadmin [RESOLVIDO] (5)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta