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

Validar que entrada sea número de 5 digitos

Estas en el tema de Validar que entrada sea número de 5 digitos en el foro de Java en Foros del Web. Hola, saludos. Estoy tratando de hacer una validacion para lo siguiente: Necesito escribir un entero que tenga 5 digitos, de lo contrario avizar al usuario ...
  #1 (permalink)  
Antiguo 26/04/2007, 22:44
 
Fecha de Ingreso: febrero-2007
Mensajes: 5
Antigüedad: 17 años, 2 meses
Puntos: 0
Validar que entrada sea número de 5 digitos

Hola, saludos. Estoy tratando de hacer una validacion para lo siguiente:

Necesito escribir un entero que tenga 5 digitos, de lo contrario avizar al usuario con un mensaje de error y al darle "Ok" me vuelva a mostrar la ventana de ingresar el número. El problema es que no se como validar los digitos. Estuve intentando hacer esto:

do{
cadenaNumero = JOptionPane.showInputDialog("Ingrese número de 5 dígitos");
numero = Integer.parseInt(cadenaNumero);
validarEntrada = (int)numero / 100000;
JOptionPane.showMessageDialog(null, "Escriba solamente un número de 5 dígitos", "ADVERTENCIA", JOptionPane.ERROR_MESSAGE);

}while(validarEntrada != 0);

Segun lo que he visto, el numero de 5 digitos dividido entre 100000 me debe dar cero, y al darme cero valida que es de 5 digitos pero no creo estar haciendolo correctamente.

Me podrian ayudar a realizar esta validacion?, gracias de antemano.
  #2 (permalink)  
Antiguo 26/04/2007, 23:45
Avatar de Asgaroth  
Fecha de Ingreso: abril-2007
Mensajes: 79
Antigüedad: 17 años, 1 mes
Puntos: 4
Re: Validar que entrada sea número de 5 digitos

prueba esto por que si lo haces diviendo en tre 100000 si el cadena es de 4 digitos o menos tambien te da 0

Código:

cadenaNumero = JOptionPane.showInputDialog("Ingrese número de 5 dígitos"); 
while(cadenaNumero.length()!=5){//revisas que solo dea de 5 digitos si no mensaje de error
	JOptionPane.showMessageDialog(null, "Escriba solamente un número de 5 dígitos", "ADVERTENCIA", JOptionPane.ERROR_MESSAGE);	
	cadenaNumero = JOptionPane.showInputDialog("Ingrese número de 5 dígitos"); 
}
numero = Integer.parseInt(cadenaNumero);
  #3 (permalink)  
Antiguo 26/04/2007, 23:51
Avatar de B**
B**
 
Fecha de Ingreso: enero-2006
Ubicación: Monterrey,Mexico
Mensajes: 952
Antigüedad: 18 años, 3 meses
Puntos: 3
Re: Validar que entrada sea número de 5 digitos

Si tienes un string con los numeros y quieres validar que sean 5 digitos:
Código HTML:
//donde la variable "digito" es tu string//
		Pattern p= Pattern.compile("[^0-9]");
		Matcher m=p.matcher(digito);
		
		if( m.find() || digito.length()!=5)
			System.out.println("mal formato de numero");
				
Ese codigo valida que solo sean numeros y que tenga 5 digitos
Edit:Claro, para que funcione tienes q hacer el import de :
import java.util.regex.Matcher;
import java.util.regex.Pattern;
Si quieres saber mas sobre Expresiones regulares
__________________
-URL= Go PHP5.
-Age=22.
-Learning=PHP,J2EE,Struts,MAMBO,C++,JSON,AJAX,XHTML ,CSS.

Última edición por B**; 27/04/2007 a las 00:25
  #4 (permalink)  
Antiguo 27/04/2007, 00:17
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 6 meses
Puntos: 51
Re: Validar que entrada sea número de 5 digitos

Tambien podrías validarlo directamente en el control de entrada, usando un JFormattedTextfield:

http://java.sun.com/j2se/1.4.2/docs/...TextField.html
http://java.sun.com/docs/books/tutor...textfield.html
http://www.chuidiang.com/java/ejempl...dTextField.php
  #5 (permalink)  
Antiguo 27/04/2007, 07:57
 
Fecha de Ingreso: febrero-2007
Mensajes: 5
Antigüedad: 17 años, 2 meses
Puntos: 0
Muchas Gracias!!

Les agradezco su valiosa ayuda para resolver la validación.
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 03:38.