Foros del Web » Programación para mayores de 30 ;) » Java »

Problema con Integer.parseInt()

Estas en el tema de Problema con Integer.parseInt() en el foro de Java en Foros del Web. Hola amigos, Se me presento un problema que me tiene un poco contrariado ya que no se porque me salta este error, resulta que estoy ...
  #1 (permalink)  
Antiguo 21/06/2011, 00:35
 
Fecha de Ingreso: junio-2011
Mensajes: 7
Antigüedad: 12 años, 10 meses
Puntos: 0
Problema con Integer.parseInt()

Hola amigos,

Se me presento un problema que me tiene un poco contrariado ya que no se porque me salta este error, resulta que estoy leyendo de un archivo txt que tiene 2 campos, un nombre y un numero...

Como el dato nombre ya esta como String lo dejo ahi pero el numero quiero parsearlo a un int para poder meterlo a una base de datos...pero al tratar de parsearlo me arroja un error...si dejo la cadena con numeros sin parsear me lee el numero como String sin ningun problema, agradeceria mucho alguien que me pudiera ayudar soy bastante nuevo en esto...

Codigo

Código:
    

public static void main(String[] args) {

        File archivo = null;
        FileReader fr = null;
        BufferedReader br = null;
        String linea = null;

        try {
            archivo = new File("\\\\192.168.1.100\\g\\prueba.txt");
            fr = new FileReader(archivo);
            br = new BufferedReader(fr);
            String[] datos = null;
            String numero = null;
            int num = 0;
            while ((linea = br.readLine()) != null) {
                datos = linea.split(";");
                String nombre = datos[0];
                numero = datos[1]; 
                num = Integer.parseInt(numero); 
                int numero = Integer.parseInt(num);
                System.out.println(nombre);
                System.out.println(num);
            }
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            try {
                if (fr != null) {
                    fr.close();
                }
            } catch (Exception e2) {
                e2.printStackTrace();
            }
        }
Error

Código:
java.lang.NumberFormatException: For input string: " 4353"
        at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
        at java.lang.Integer.parseInt(Integer.java:449)
        at java.lang.Integer.parseInt(Integer.java:499)
        at lectura.main(lectura.java:45)
  #2 (permalink)  
Antiguo 21/06/2011, 00:58
Avatar de Xerelo  
Fecha de Ingreso: mayo-2009
Mensajes: 2.175
Antigüedad: 15 años
Puntos: 306
Respuesta: Problema con Integer.parseInt()

Cita:
" 4353"
Tienes un espacio en blanco delante del número, por eso falla, utiliza trim()
__________________
Cada vez que solucionas los problemas de alguien que no se esfuerza, piensa en que el día de mañana puede llegar a ser tu compañero de trabajo, o peor, tu jefe.
  #3 (permalink)  
Antiguo 21/06/2011, 06:22
 
Fecha de Ingreso: junio-2011
Mensajes: 7
Antigüedad: 12 años, 10 meses
Puntos: 0
Respuesta: Problema con Integer.parseInt()

Cita:
Iniciado por Xerelo Ver Mensaje
Tienes un espacio en blanco delante del número, por eso falla, utiliza trim()
Muchas gracias amigo, era ese detalle! :)

Saludos y gracias por responder tan rapido.
  #4 (permalink)  
Antiguo 21/06/2011, 12:56
 
Fecha de Ingreso: junio-2011
Mensajes: 7
Antigüedad: 12 años, 10 meses
Puntos: 0
Respuesta: Problema con Integer.parseInt()

Para no construir un nuevo tema,

Me podrias ayudar con esto ultimo por favor.

Hice un pequeño programita que toma de un archivo txt y va almacenando esa informacion en una base de datos, hasta aqui ningun problema.

Pero necesito que este programa se ejecute cada 10 minutos y lea de nuevo el txt para ver si existe nueva informacion y guardarla en la bd. Entonces este programa no tiene interaccion con el usuario solo se ejecuta hasta que yo mismo lo cierre. Se entiende? existe una funcion que me pueda ayudar a cumplir un siglo por tiempo, he encontrado muchas pero no supe como ocuparlas.

y otra cosilla, resulta que compile este programa para dejarlo como una ejecutable .jar pero no se abre si no que simplemente me sale el sonido de error sin mostrar ningun mensaje, he podido hacer ejecutables jar solo con ventanas jframe pero de esta manera no se porque no me resulta.

Disculpen las molestias, y les agradesco mucho si me pudiesen ayudan a terminar este programa.

Saludos!
  #5 (permalink)  
Antiguo 22/06/2011, 10:36
 
Fecha de Ingreso: enero-2011
Mensajes: 47
Antigüedad: 13 años, 3 meses
Puntos: 5
Respuesta: Problema con Integer.parseInt()

Que código estas utilizando para ejecutar el jar? o le das doble click?
  #6 (permalink)  
Antiguo 22/06/2011, 11:36
Avatar de Xerelo  
Fecha de Ingreso: mayo-2009
Mensajes: 2.175
Antigüedad: 15 años
Puntos: 306
Respuesta: Problema con Integer.parseInt()

Para probar un jar, hazlo desde la línea de comandos, de esa forma si hay algún error lo verás.

Otra idea es utilizar logs que marquen por donde pasan, ya sea por consola o a un archivo.
__________________
Cada vez que solucionas los problemas de alguien que no se esfuerza, piensa en que el día de mañana puede llegar a ser tu compañero de trabajo, o peor, tu jefe.

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:15.