Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class Fecha {
- private int anio;
- private int dia;
- private int mes;
- public Fecha() {
- }
- public Fecha(int anio, int dia, int mes){
- setAnio(anio);
- setDia(dia);
- setMes(mes);
- }
- public int getAnio(){
- return anio;
- }
- public int getDia(){
- return dia;
- }
- public int getMes(){
- return mes;
- }
- public void setAnio(int anio){
- this.anio=anio;
- }
- public void setDia(int dia){
- this.dia=dia;
- }
- public void setMes(int mes){
- this.mes=mes;
- }
- public boolean validadFecha(){
- boolean validoFecha=false;
- if (dia<1 || dia>31) {
- validoFecha=true;
- }
- if (mes<1 || mes>12) {
- validoFecha=true;
- }
- if (mes==2 && dia==29 && anio % 400 == 0 || (anio % 4 == 0 && anio % 100 != 0) ) {
- validoFecha=true;
- }
- return validoFecha;
- }
- }
- boolean correcto = false;
- Fecha fecha = new Fecha(dia, mes, anno);
- correcto = fecha.validarFecha();
- if (correcto == true) {
- System.out.println("La fecha es correcta");
- } else {
- System.out.println("La fecha es incorrecta");
- }
- public boolean validarFecha() {
- boolean correcto = false;
- try {
- //Formato de fecha (día/mes/año)
- SimpleDateFormat formatoFecha = new SimpleDateFormat("dd/MM/yyyy");
- formatoFecha.setLenient(false);
- //Comprobación de la fecha
- formatoFecha.parse(this.dia + "/" + this.mes + "/" + this.anno);
- correcto = true;
- } catch (ParseException e) {
- //Si la fecha no es correcta, pasará por aquí
- correcto = false;
- }
- return correcto;
- }
- private boolean esFechaValida(int anio, int dia, int mes){
- boolean esFechaValida = true;
- try{
- LocalDate.of(anio, mes, dia);
- }catch(DateTimeException e) {
- esFechaValida = false;
- }
- return esFechaValida;
- }
Add Comment
Please, Sign In to add comment