Olá Colegas,
Gerei o código abaixo, que ler um arquivo txt e depois me dá o resultado.
Gostaria de saber como fazer uma classe só para ler o arquivo TXT, e depois chamá-la no MAIN.
package tarefapraticap;
/**
*
-
@Jeorge Hilbert
/
import java.io.;
import java.awt.;
import java.awt.event.;
import javax.swing.*;
import java.util.Scanner;
public class ExibirArquivo{
/**
* @param args the command line arguments
*/
private static Scanner scanner = new Scanner(System.in);
public static void main(String[] args) throws Exception{
// Aqui vamos checar se foram passados os dois argumentosd pedidos
// args[0] contém o nome do arquivo a ser lido
System.out.println("(0)Para Executar (1)Para Sair:");
int j = scanner.nextInt();
String mNomeArq = "d:Pexec.txt";
FileWriter open = new FileWriter( mNomeArq, true );
if(j == 1){
System.out.println("Arquivo Pexec.txt nao encontrado!!");
System.exit(1);
}
//Abrindo arquivo
FileInputStream stream = new FileInputStream(mNomeArq);
InputStreamReader streamReader = new InputStreamReader(stream);
BufferedReader reader = new BufferedReader(streamReader);
// Neste WHILE lêr-se linha por linha
String line = null;
int cont = 0;
int contapalavra = 0;
int contacaracter = 0;
char letra;
while((line=reader.readLine()) != null){
// Apresentar valor da linha na tela
cont++;
System.out.print(cont+"- ");
System.out.println(line);
contacaracter= contacaracter+line.length();
for(int i=0;i<line.length();i++){
char b= ' ';
if(line.charAt(i)==b){
contapalavra++;
}
}
}
contapalavra= contapalavra+cont;
System.out.println("=== Resumo === ");
System.out.println("Numero de Linhas....: "+cont);
System.out.println("Numero de Palavras..: "+contapalavra);
System.out.println("Numero de Caracteres: "+contacaracter);
reader.close();
streamReader.close();
stream.close();
}
}
