Problema con BufferedReader al haceer un readline()
Pues eso, que no hay manera a ver si alguien sabe que demonios hago mal, un saludo.
________________________
import java.io.*;
public class prueba
{
public prueba()
{
}
public int leer()
{
int n =0;
BufferedReader flujo = new BufferedReader(new InputStreamReader(System.in));
String datoEntrado = flujo.readline();
n = Integer.parseInt(datoEntrado);
return n;
}
}
________________________
import java.io.*;
public class prueba
{
public prueba()
{
}
public int leer()
{
int n =0;
BufferedReader flujo = new BufferedReader(new InputStreamReader(System.in));
String datoEntrado = flujo.readline();
n = Integer.parseInt(datoEntrado);
return n;
}
}
No controlas las excecpiones que pueden saltar ni al crear el buffer ni al leer una linea ni al pasar a entero la linea. Cada una de esas "instrucciones" puede generar una excepcion las dos primeras son de tipo IOException y la última NumberFormatException( mira la documentacion de java)
Llebabas razon, y ahora el programa va, pero cuando se hace la operacion readLine() al ejecutarse el programa, se lanza la excepcion siguiente:
java.io.IOException: Controlador no válido
java.lang.NumberFormatException: null
Que crees que podra ser? No deja introducir datos por teclado ni nada.. simplemente lanza la excepcion
java.io.IOException: Controlador no válido
java.lang.NumberFormatException: null
Que crees que podra ser? No deja introducir datos por teclado ni nada.. simplemente lanza la excepcion
Lo que sucede amigo es que cuando ingresas algun texto, en tu caso la intencion es ingresar un entero,
este deberia llegar como (por ejemplo)
"123", pero cuando das un enter en el prompt.. se crea un salto de linea por tanto.. llega "123n", y este es un String que no se puede convertir a entero.. por eso el NumberFormatException..
Espero haberte ayudado
Fernando Tapia
este deberia llegar como (por ejemplo)
"123", pero cuando das un enter en el prompt.. se crea un salto de linea por tanto.. llega "123n", y este es un String que no se puede convertir a entero.. por eso el NumberFormatException..
Espero haberte ayudado
Fernando Tapia
