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

Convertir datos(String) de archivo de texto a enteros

Estas en el tema de Convertir datos(String) de archivo de texto a enteros en el foro de Java en Foros del Web. HOla amigos buenas noches. tengo una aplicacion donde leo un archivo .txt que tiene 10.000 lineas de números aleatorios y bueno efectivamente el programa lo ...
  #1 (permalink)  
Antiguo 23/10/2013, 23:03
 
Fecha de Ingreso: septiembre-2013
Ubicación: Bogota
Mensajes: 139
Antigüedad: 11 años, 2 meses
Puntos: 0
Convertir datos(String) de archivo de texto a enteros

HOla amigos buenas noches. tengo una aplicacion donde leo un archivo .txt que tiene 10.000 lineas de números aleatorios y bueno efectivamente el programa lo hace pero ahora necesito que esos datos que estan en el archivo de texto plano se pasen a enteros para poder posteriormente manipularlos por que necesito ordenarlos con varios tipos de ordenamientos pero la verdad no sabria como pasar los datos a enteros. Les agradeceria mucho. aqui dejo mi codigo de lo que he hecho hasta ahora:

Código:
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
public class readText {
	public static void main(String[] args) {
		File f = new File( "C:/Users/user/Desktop/Sin ordenar/prueba.txt" );
		BufferedReader entrada;
		try {
			entrada = new BufferedReader( new FileReader( f ) );
			String linea;
			while(entrada.ready()){
				linea = entrada.readLine();
				System.out.println(linea);
			}
		}catch (IOException e) {
			e.printStackTrace();
		}
	}
}
  #2 (permalink)  
Antiguo 23/10/2013, 23:28
JMitsu
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Convertir datos(String) de archivo de texto a enteros

Para convertir un String a Entero, usa la siguiente función de la clase Integer:


Código Java:
Ver original
  1. Integer.parseInt(String texto);
  #3 (permalink)  
Antiguo 24/10/2013, 12:54
 
Fecha de Ingreso: septiembre-2013
Ubicación: Bogota
Mensajes: 139
Antigüedad: 11 años, 2 meses
Puntos: 0
Respuesta: Convertir datos(String) de archivo de texto a enteros

Oye si gracias por responder. ya hice lo que me sugeriste pero la verdad me sale este error:
Exception in thread "main" java.lang.NumberFormatException: For input string: "| 0 || 1 |"
  #4 (permalink)  
Antiguo 24/10/2013, 16:04
Avatar de iblancasa  
Fecha de Ingreso: diciembre-2012
Ubicación: España
Mensajes: 143
Antigüedad: 11 años, 11 meses
Puntos: 16
Respuesta: Convertir datos(String) de archivo de texto a enteros

Cita:
Iniciado por andre___5025 Ver Mensaje
Oye si gracias por responder. ya hice lo que me sugeriste pero la verdad me sale este error:
Exception in thread "main" java.lang.NumberFormatException: For input string: "| 0 || 1 |"
Lo suyo sería que pusieras el código.

Un saludo.
  #5 (permalink)  
Antiguo 24/10/2013, 20:17
 
Fecha de Ingreso: septiembre-2013
Ubicación: Bogota
Mensajes: 139
Antigüedad: 11 años, 2 meses
Puntos: 0
Respuesta: Convertir datos(String) de archivo de texto a enteros

esta bien:

Cita:
package pruebas;

import java.io.*;
public class Pruebas {

/**
* @param args the command line arguments
*/
public static void main(String[] args) {

File f = new File( "C:/Users/Nando Cruz/Desktop/Sin ordenar/Sinordenar_10k_1D.txt" );
BufferedReader entrada;
try {
entrada = new BufferedReader( new FileReader( f ) );
String linea;
while(entrada.ready()){
linea = entrada.readLine();
Integer.parseInt(linea);
System.out.println(linea);
}
}catch (IOException e) {
e.printStackTrace();
}
}
}
Y el error que me sale es:

Exception in thread "main" java.lang.NumberFormatException: For input string: "| 0 || 1 |"
at java.lang.NumberFormatException.forInputString(Num berFormatException.java:65)
  #6 (permalink)  
Antiguo 24/10/2013, 22:03
JMitsu
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Convertir datos(String) de archivo de texto a enteros

La excepción NumberFormatException significa que Se esperaba un Numero y se ha ingresado otra cosa. Esto pasa regularmente cuando se intenta convertir un String a Integer o Double que tiene el formato incorrecto. Fíjate en como se está escribiendo los números:

Cita:
For input string: "| 0 || 1 |"
Primero, el valor convertido a entero debe ser almacenado en una variable entera:

Código Java:
Ver original
  1. int numero = Integer.parseInt(linea);

Esta excepción se controla con un simple try catch. Puedes usar un multi catch:

Código Java:
Ver original
  1. try {
  2.    entrada = new BufferedReader( new FileReader( f ) );
  3.    String linea;
  4.         while(entrada.ready()){
  5.                linea = entrada.readLine();
  6.                numero = Integer.parseInt(linea);
  7. } catch(IOException e) {
  8.         System.out.println("Error al leer el fichero.");
  9. }
  10. } catch(NumberFormatException ex) {
  11.         System.out.println("La cadena no puede ser convertida a numero.");
  12. }

Etiquetas: enteros, programa, string
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 11:43.