Hora en milisegundos con Java

Da el número de milisegundos que han pasado entre la fecha actual y la medianoche del 1 de enero de 1970 UTC.

 System.currentTimeMillis();


 public Fecha fechaHoy(){

        long segundos = System.currentTimeMillis()/1000;

        long dias = segundos/(24*60*60);

        segundos = segundos%(24*60*60);

        long horas = segundos/(60*60);

        segundos = segundos%(60*60);

        long minutos = segundos/60;

        segundos = segundos%60;

        Fecha origen = new Fecha(1,1,1970);

        Fecha hoy = origen.diasMasFecha((int)dias);

    

        return hoy;

    }


public Fecha diasMasFecha(int dias){

        Fecha devuelve= null;int mismoMes = 0;

        this.dia = dia;

        this.mes = mes;

        this.anyo= anyo;

        

        if (esValida(dia,mes,anyo))   

              

        mismoMes = diasMes - dia;        

        if(mismoMes>=dias) {dia = dia+dias; mes = mes; anyo = anyo; devuelve = new Fecha (dia,mes,anyo);}

        else{dia = dias-mismoMes;if (mes ==12){mes = 1;anyo = anyo+1; devuelve = new Fecha (dia,mes,anyo);}

                                    else{mes =mes+1;anyo = anyo; devuelve = new Fecha (dia,mes,anyo); }

        }

        return devuelve; 

    }

public static boolean esValida(int dia, int mes, int anyo){

        boolean esValida = false;

        if(mes<1||mes>12||dia<1||dia>31)esValida = false;

        

        switch(mes){

            case 2: if(esBisiesto(anyo)){diasMes =29;if(dia<=29)esValida = true;break;}

                    else {diasMes = 28;if(dia<=28)esValida =true;break;}

            case 4:

            case 6:

            case 9:

            case 11: diasMes = 30; if(dia<=30)esValida = true;break;

            default: diasMes = 31;if(dia<=31) esValida = true;break;              

        }

        if(anyo == 1582&&mes ==10)if(dia>=5&&dia<=14)esValida = false;

      return esValida;

    }

public static boolean esBisiesto(int anyo){

        boolean devuelve = false;

       if(anyo >= 1582){ if( anyo%4==0&&anyo%100!=0||anyo%400==0){devuelve = true;}}

       else if(anyo>=1&&anyo<1582){if(anyo%4==0) devuelve =  true;}

       return devuelve;    

    }


Comentarios

Entradas populares de este blog

Instalar Microsoft Money 99 en W10

Métodos

Como formatear el disco duro desde memoria USB