Tecnología

Inicio

Cómo validar una fecha en Java

Cómo validar una fecha en Java


Cuando se recibe la entrada en Java, tendrá que validarlo antes de pasarlo a otras partes de su programa para evitar errores. Validar la entrada del usuario antes de aceptarlo en el programa le permite rebotar de entrada defectuosa de vuelta al usuario. Mientras que la variedad de opciones en la expresión de la fecha de entrada puede hacer que la fecha y la validación problemático, un método sencillo le permite comprobar su entrada y asegúrese de fechas con el formato adecuado.

Instrucciones

1 Decidir el formato de fecha que va a requerir que los usuarios utilizan para la entrada de programa. Por ejemplo, es posible seleccionar el mes / día / año.

2 Crear un método booleano que acepta la fecha de entrada en forma de una cadena:

isValidDate privada (entrada String) {}

3 Convertir el formato de fecha en una cadena de ideales que Java pueda entender. Sustituto "M" para cada carácter del mes, "d" minúscula para cada carácter de los días en el mes, y en minúsculas "y" para cada personaje del año. Por ejemplo, si usted espera que los usuarios de entrada 31 de diciembre de 1999, según 12/31/1999, la cadena de formato de fecha sería MM / dd / aaaa. Guardar esta cadena como formatoCadena en su método isValidDate.

FormatoCadena cadena = "MM / dd / aaaa";

4 Importe las clases necesarias en la clase que contiene el método de isValidDate.

importar java.text. *;

5 Abrir un bloque try en su método isValidDate. Dentro de este bloque de crear un nuevo formato llamado SimpleDateFormat con formatoCadena como la entrada a su constructor.

tratar{

SimpleDateFormat format = new SimpleDateFormat(form);

6 Llame format.setLenient (falso) para asegurar que la cadena de entrada será analizada correctamente. Ahora pasa la cadena de entrada en format.parse () y cierre el bloque try. El SimpleDateFormat intentará que coincida con la cadena de entrada a su formatoCadena proporcionado. Si la cadena de entrada contiene una fecha con formato incorrecto, SimpleDateFormat lanzará una excepción.

format.setLenient (false);
format.parse (entrada);
}

7 Fuera del bloque try, coger ParseException y IllegalArguementException. Return false si se ha producido alguna de estas excepciones.

captura (ParseException e) {return false;}
captura (IllegalArguementException e) {return false;}

8 Si el programa ha llegado a este punto, la fecha de entrada era válida y se puede volver verdadero y cerrar el método.

return true;

9 Integrar el método en su programa. Llame isValidDate (entrada) en cualquier cadena de entrada. El método devolverá true si la cadena de entrada coincide con el formato de fecha especificado en el Paso 3.

Consejos y advertencias

  • Su método final será similar al siguiente:
  • booleano isValidDate (entrada String) {
  • FormatoCadena cadena = "MM / dd / aaaa"
  • tratar{
  • Formato SimpleDateFormat = new SimpleDateFormat (forma);
  • format.setLenient (false);
  • format.parse (entrada);
  • }
  • captura (ParseException e) {return false;}
  • captura (IllegalArguementException e) {return false;}
  • return true;
  • }