Retroceder   Foros del Web > Programación para sitios web > Java y JSP

Respuesta
 
Herramientas Desplegado
Antiguo 26-abr-2007, 22:44   #1 (permalink)
DANIEL M ha deshabilitado el karma
 
Fecha de Ingreso: febrero-2007
Mensajes: 5
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.
DANIEL M está desconectado   Responder Citando
Antiguo 26-abr-2007, 23:45   #2 (permalink)
Asgaroth ha deshabilitado el karma
 
Avatar de Asgaroth
 
Fecha de Ingreso: abril-2007
Mensajes: 68
Enviar un mensaje por MSN a Asgaroth
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);
Asgaroth está desconectado   Responder Citando
Antiguo 26-abr-2007, 23:51   #3 (permalink)
B**
B** ha deshabilitado el karma
 
Avatar de B**
 
Fecha de Ingreso: enero-2006
Ubicación: Monterrey,Mexico
Mensajes: 952
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-abr-2007 a las 00:25.
B** está desconectado   Responder Citando
Antiguo 27-abr-2007, 00:17   #4 (permalink)
GreenEyed tiene algunos puntos positivos de karma
 
Fecha de Ingreso: octubre-2003
Mensajes: 2.570
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
GreenEyed está desconectado   Responder Citando
Antiguo 27-abr-2007, 07:57   #5 (permalink)
DANIEL M ha deshabilitado el karma
 
Fecha de Ingreso: febrero-2007
Mensajes: 5
Muchas Gracias!!

Les agradezco su valiosa ayuda para resolver la validación.
DANIEL M está desconectado   Responder Citando
Respuesta

No hay votos aún.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Desactivado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 20:11.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93