elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Duda de lecturas de cadenas en consola
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Duda de lecturas de cadenas en consola  (Leído 2,548 veces)
soser

Desconectado Desconectado

Mensajes: 44


...


Ver Perfil
Duda de lecturas de cadenas en consola
« en: 1 Julio 2010, 09:53 am »

Que tal, bien pues ando trabajando en consola y me surge un problema en la lectura de una cadena, resulta que hago esto:
 
Código
  1. System.out.println("Ingresa nombre de usuario de T.debito");
  2. usude.setnombre(in.nextLine());

para pasar una cadena a mi método, pero al salir en consola no lo lee, se salta esa lectura y pasa a la siguiente, y se me hace extraño porque usando un código similar unas lineas antes lo lee normalmente.A que se debe? como puedo solucionarlo?
Gracias.


« Última modificación: 1 Julio 2010, 10:27 am por Debci » En línea

Debci
Wiki

Desconectado Desconectado

Mensajes: 2.021


Actualizate o muere!


Ver Perfil WWW
Re: Duda de lecturas de cadenas en consola
« Respuesta #1 en: 1 Julio 2010, 10:26 am »

Probablemente a los delays de la aplicación o la organización de elctura por streams, mira de que amnera entrega el I/O los mensajes de entrada y salida, y verás tu error.

Por cierto recuerda que hay que poner las quotees de codigo:

Código:
[code=java]//Codigo java aqui dentro
[/code]

Esta vez lo pongo yo, pero intenta hacerlo correctamente para la proxima:

http://foro.elhacker.net/java/reglas_del_foro_iexclleed_todos-t163024.0.html


Saludos


En línea

egyware


Desconectado Desconectado

Mensajes: 526



Ver Perfil WWW
Re: Duda de lecturas de cadenas en consola
« Respuesta #2 en: 1 Julio 2010, 15:06 pm »

Hola
Primero hare unas suposiciones

Código
  1. class Algo{
  2. string nombre;
  3. public void setNombre(String nombre){
  4. this.nombre = nombre;
  5. }
  6. }
  7. //----
  8. Scanner in = new Scanner(System.in);
  9. System.out.println("Ingresa nombre de usuario de T.debito");
  10. usude.setnombre(in.nextLine());
  11.  

Supongo que lo tienes asi? Bueno es posible que no haya datos de entrada en el buffer por ejemplo tienes 5 lineas en la consola y lees 6, es evidente que la secta no la leera. Lo que puedes hacer que se trabe la ejecución hasta que lea la linea.
Código
  1. while(!in.hasNext()); //Hasta que encuentre le pasen una linea !!! >:(
  2. usude.setnombre(in.nextLine());
  3. }
  4.  
Lo otro fijate bien que eso lee lineas y pueden terminar con un salto de linea '\n' o un salto linea y un retorno de carro "\n\r".
Saludos
En línea

Debci
Wiki

Desconectado Desconectado

Mensajes: 2.021


Actualizate o muere!


Ver Perfil WWW
Re: Duda de lecturas de cadenas en consola
« Respuesta #3 en: 1 Julio 2010, 18:19 pm »

Hola
Primero hare unas suposiciones

Código
  1. class Algo{
  2. string nombre;
  3. public void setNombre(String nombre){
  4. this.nombre = nombre;
  5. }
  6. }
  7. //----
  8. Scanner in = new Scanner(System.in);
  9. System.out.println("Ingresa nombre de usuario de T.debito");
  10. usude.setnombre(in.nextLine());
  11.  
El problema creo que es que faltan datos, del su problema, yo supongo que lo que le ocurre es que la consola tira resultados y en ese momento noe sta leyendo, pero bueno, en cualquier caso tiene las dos posiblidades posibles xD

Saludos

Supongo que lo tienes asi? Bueno es posible que no haya datos de entrada en el buffer por ejemplo tienes 5 lineas en la consola y lees 6, es evidente que la secta no la leera. Lo que puedes hacer que se trabe la ejecución hasta que lea la linea.
Código
  1. while(!in.hasNext()); //Hasta que encuentre le pasen una linea !!! >:(
  2. usude.setnombre(in.nextLine());
  3. }
  4.  
Lo otro fijate bien que eso lee lineas y pueden terminar con un salto de linea '\n' o un salto linea y un retorno de carro "\n\r".
Saludos
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines