Contador de caracteres, palavras e linhas de um arquivo
Publicado por Reginaldo de Matias (última atualização em 06/11/2011)
[ Hits: 19.848 ]
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
Algoritmos para Teoria dos Números
Calcular ritmo de corrida de rua
Nenhum comentário foi encontrado.
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Jogar games da Battle.net no Linux com Faugus Launcher
Como fazer a Instalação de aplicativos para acesso remoto ao Linux
Como fazer a instalação do Samba
Como fazer a conversão binária e aplicar as restrições no Linux
Duas Pasta Pessoal Aparecendo no Ubuntu 24.04.3 LTS (40)
Pfsense inacessivel após um periodo de tempo (2)









