
Problema al ejecutar código
Publicado por Gonzalo (10 intervenciones) el 04/04/2022 17:34:30
Buenas tardes, estoy teniendo problemas al ejecutar un código para un ejercicio de práctica que estoy haciendo. Me pide desarrollar un programa con una clase contador con una propiedad ruta al archivo y un método que cuente las palabras contenidas en el, además de desarrollar una clase main para probarlo. De momento este es el código que tengo.
Esta sería la clase Main.
Esta la clase contador. Saludos
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
public class Main {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
boolean ejecucion=true;
do{
System.out.println("Escoger el programa de contar palabras");
int opcion = Integer.parseInt(leerTeclado());
switch(opcion){
case 1:{
contarPalabrasArchivo();
break;
}
default:{
System.out.println("Opcion no valida");
break;
}
}
}while(ejecucion);
}
public static String leerTeclado (){
String retorno="";
Scanner sc= new Scanner(System.in);
retorno = sc.nextLine();
return retorno;
}
public static void contarPalabrasArchivo(){
Contador contador = new Contador();
System.out.println("Introduzca la ruta");
contador.setArchivo(new File(leerTeclado()));
contador.contarPalabras();
}
}
Esta sería la clase Main.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
public class Contador {
File archivo;
public File getArchivo() {
return archivo;
}
public void setArchivo(File archivo) {
this.archivo = archivo;
}
public Contador(File archivo) {
this.archivo = archivo;
}
public Contador() {
}
//Metodo de lectura
public void contarPalabras(){
try(BufferedReader bfr = new BufferedReader(new FileReader(archivo))){
String linea= bfr.readLine();
int contador = 0;
while (linea!=null){
String palabras[]=linea.split(" ");
contador+=palabras.length;
System.out.println(linea);
linea= bfr.readLine();
}
System.out.println("El numero de palabras obtenido es de " +contador);
} catch (FileNotFoundException ex) {
Logger.getLogger(Contador.class.getName()).log(Level.SEVERE, null, ex);
} catch (IOException ex) {
Logger.getLogger(Contador.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
Esta la clase contador. Saludos
Valora esta pregunta


0