| Casa | Hardware | Redes | Programación | software | Criticar | Sistemas |   
Programación  
  • C /C + + Programming

  • Lenguajes De Programación

  • Delphi Programación

  • Programación Java

  • JavaScript Programación

  • Programación PHP /MySQL

  • Perl Programming

  • Python Programming

  • Rubí Programación

  • Visual Basics Programación
  •  
    Conocimientos Informáticos >> Programación >> Programación Java >> Content
    Cómo calcular Fecha Diferencia en Java
    Cálculo de las diferencias entre las dos fechas en Java 6.0 y versiones anteriores pueden ser engañosamente difícil debido a la necesidad de acomodar los años bisiestos , segundos bisiestos , los tiempos de ahorro de luz del día y otros ajustes realizados periódicamente a la agenda de la mayoría de los países. Esta guía le ofrece dos soluciones , una que no se debe utilizar en situaciones en horario de verano o los años bisiestos pueden causar problemas graves y una opción más sofisticada basada en la biblioteca JSR -310 . Esta biblioteca está programado para ser parte de la API de Java 7.0 cuando se lance a finales de 2010 . Sin embargo, puede ser descargado para su uso ahora . Cosas que necesitará de computadora

    Java JSR -310 (opcional )
    Mostrar más instrucciones
    Uso de Java 6.0 Herramientas
    1

    Crear un nueva clase con el nombre de " DateDifferencer " y el nombre de archivo " DateDifferencer.java . " Dale el siguiente esqueleto :

    /*** Esta clase proporcionará dos métodos para encontrar las diferencias entre las fechas: * - Un método nativo que no tiene en cuenta los años bisiestos y otras rarezas de fecha * , pero que es compatible con la última versión de Java , a principios de 2010 * - . . Una versión más sofisticada que utiliza la biblioteca externa JSR -310 *, que se incluirá en Java 7 , que se publicará a finales de 2010 ** @ author Kevin Walker * Clase /public DateDifferencer {

    }

    Todo lo demás va a ir dentro de esta estructura de clases.
    2

    Calcular el número de milisegundos en un día y guárdelo en una constante para su uso posterior. Esto es necesario porque Java versiones 6.0 y anteriores comprenden el tiempo de forma nativa en milisegundos o nanosegundos .

    /*** El número de milisegundos de un día es igual a 1000 milisegundos por segundo * 60 segundos por minuto * 60 minutos por horas * 24 horas al día * /foto

    public double MILLISECONDS_IN_DAY static final = 1000 * 60 * 60 * 24 ;
    3

    crear el método " findDifference " . Asegúrese de que el comentario Javadoc toma nota de la debilidad en el procedimiento para cualquier otra persona que decida utilizar.

    /*** Esta clase utiliza un método sencillo para calcular la diferencia entre dos fechas. * Sin embargo , no es impecable . Las imprecisiones pueden ser el resultado de los años bisiestos . ** @ Return el número de días de diferencia entre las dos fechas sin corrección de los años bisiestos o de horario de verano el tiempo cambia . * /Double findDifference public static ( Fecha d1 , d2 Fecha ) {
    < p> doble diff = Math.abs ( d2.getTime () - d1.getTime ());

    dobles día = diff /MILLISECONDS_IN_DAY ;
    días de retorno

    ;

    }

    Esto funciona mediante la búsqueda de la diferencia entre las dos fechas , en términos de milisegundos . A continuación, se divide por el número de milisegundos en un día (que que calculó en el paso 2 ) .
    Uso JSR -310
    4

    Coloque el JSR - 310 Tiempo archivo " jar" en el mismo directorio que el resto de su programa.
    5

    Añadir unas importaciones más a la clase DateDifferencer para que pueda tener acceso a la biblioteca de JSR 310 .
    < p > javax.time.Duration importación , importación javax.time.period.Period ; .
    6

    Añadir un nuevo método a la clase DateDifferencer

    /*** @ return string que describe la diferencia entre las dos fechas * /static String findDifferenceWithJSR pública ( fecha de inicio , fecha de finalización ) { tiempo = duración Duration.durationBetween ( inicio, fin ) . Período diff = Period.nanos ( duration.toNanos ()); volver nueva diff.toString () ;}

    Esto crea un objeto de "Duración" , que mantiene la diferencia entre las dos fechas. Podrías parar allí y regresar comando " toString " de la Duración . Sin embargo , esto proporciona la respuesta en términos de segundo , que no es legible por humanos . Por lo tanto, a continuación, crea un objeto "período" y utiliza su mando " toString " .

    Previous :

    next :
      Artículos relacionados
    ·Cómo utilizar Java Web Start 
    ·¿Cómo puedo imprimir todos los números primos en Jav…
    ·Cómo agregar manifiestos en los JAR 
    ·Cualidades de un buen desarrollador de Java para sistem…
    ·Cómo quitar un elemento de MIDP 2.0 Programáticamente…
    ·Cómo escribir etiquetas personalizadas en JSP 
    ·Cómo obtener los nombres de columna de una tabla de ba…
    ·Cómo ejecutar una prueba de V8 en un Android 
    ·¿Qué es el JDBC Abstraction 
    ·Java 1.5 Características 
      Artículos destacados
    ·Cómo utilizar varias variables en una cadena de direcc…
    ·Cómo crear diagramas UML 
    ·Cómo eliminar una revisión de SolidWorks API 
    ·Cómo buscar en el registro de Vb6 
    ·Cómo editar una fila de GridView 
    ·Cómo redireccionar una página web mediante HTML 
    ·Cómo incrustar código PHP en archivos JS 
    ·Los tipos de líneas en Visual Basic 
    ·Cómo Ignorar líneas de comentario en C + + 
    ·Cómo romper una cadena larga 
    Copyright © Conocimientos Informáticos http://ordenador.wingwit.com