Class ELOAsDateUtils


  • public class ELOAsDateUtils
    extends java.lang.Object

    Überschrift: ELOAsDateUtils.

    Beschreibung: Hilfsmethoden für Datumsangaben.

    Copyright: Copyright (c) ELO Digital Office GmbH 2018

    • Constructor Summary

      Constructors 
      Constructor Description
      ELOAsDateUtils()  
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static java.lang.String dateFromInternalDate​(int internalDate, java.lang.String timeZone)
      Liefert ein Iso-Datum aus dem angegebenen internen ELO-Datum zurück.
      static java.util.Date dateFromIso​(java.lang.String isoDate)
      Erzeugt aus einem Iso-Datum ein Java-Datum.
      static java.lang.String displayDateFromDate​(java.util.Date date)
      Formatiert ein Java Datum in eine Datumsanzeige um.
      static java.lang.String displayDateFromDate​(java.util.Date date, java.text.DateFormat dateFormat)
      Formatiert ein Java Datum in eine Datumsanzeige um.
      static java.lang.String displayDateFromIso​(java.lang.String isoDate)
      Formatiert einen ISO Datumsstring in eine Datumsanzeige um.
      static java.lang.String displayDateFromIso​(java.lang.String isoDate, java.text.DateFormat dateFormat)
      Formatiert einen ISO Datumsstring in eine Datumsanzeige um.
      static java.lang.String displayDateFromIsoWithTime​(java.lang.String isoDate)
      Formatiert einen ISO Datumsstring in eine Datumsanzeige um.
      static java.lang.String displayDuration​(long millisec)
      Liefert eine Darstellung der Dauer in Stunden, Minuten, Sekunden für die angegebenen Millisekunden zurück.
      static java.util.Date getCurrentWeekEnd()
      Liefert das Ende der aktuellen Woche zurück.
      static java.util.Date getCurrentWeekStart()
      Liefert den Anfang der aktuellen Woche zurück.
      static java.util.Date getDateWithoutTime​(java.util.Date date)
      Liefert das Datum ohne Uhrzeit zurück (0:00:00.000).
      static java.util.Date getEdgeOfDay​(java.util.Date date, boolean endOfDay)
      Liefert ein Datum mit der Anfangs/End-Zeit des angegebenen Datums.
      static java.util.Date getEdgeOfYear​(java.util.Date yearDate, boolean endOfYear)
      Liefert das Datum mit erstem/letztem Tag des Jahres und passender Uhrzeit.
      static java.lang.String getIsoDate​(java.io.File file)
      Liefert das Datum der letzten Änderung der Datei als ISO-Datum zurück.
      static long getMilliseconds​(int dayCount)
      Liefert die Anzahl der Millisekunden der angegebenen Tage zurück.
      static java.lang.String getMonthWithSorting​(int month)
      Liefert den angegebenen Monat mit einer zweistelligen Nummer und seiner Bezeichnung zurück.
      static java.util.Date getToday()
      Liefert das heutige Datum mit der aktuellen Uhrzeit zurück.
      static java.util.Date getTomorrow()
      Liefert das Datum von morgen zurück.
      static java.util.Date getYesterday()
      Liefert das gestrige Datum zurück.
      static boolean hasTime​(java.util.Date date)
      Meldet zurück, ob das Datum eine Uhrzeit hat (Stunde, Minute, Sekunde oder Millisekunde ungleich 0).
      static int internalDateFromDate​(java.lang.String isoDate, java.lang.String timeZone)
      Liefert ein internes ELO-Datum aus dem angegebenen Iso-Datum zurück.
      static boolean isNewerThan​(java.util.Date firstDate, java.util.Date secondDate)
      Meldet zurück, ob das erste Datum nach dem zweiten Datum liegt.
      static java.lang.String isoFromDate​(java.util.Date date)
      Erzeugt aus dem angegebenen Java-Datum ein Iso-Datum mit Datum und Uhrzeit.
      static java.lang.String isoFromDateShort​(java.util.Date date)
      Erzeugt aus dem angegebenen Java-Datum ein Iso-Datum mit Datum und ohne Uhrzeit.
      static boolean isValidIsoDate​(java.lang.String isoDate)
      Meldet zurück, ob das angegebene Datum ein gültiges IsoDatum ist.
      static boolean isValidYear​(java.util.Date date)
      Überprüft, ob das Datum im möglichen Datumsbereich (Jahre 1000 bis 6000) ist.
      static java.util.Date now​(int offsetMinutes)
      Liefert das heutige Datum mit den angegebenen addierten Minuten zurück.
      static java.util.Date parseDate​(java.lang.String text)
      Liefert das Datum zum übergebenen Text, oder null, falls der Text kein gültiges Datum ist.
      static java.lang.String timestampFromDate​(java.util.Date date)
      Erzeugt aus dem angegebenen Java-Datum ein ELO Zeitstempel mit Datum und Uhrzeit.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • ELOAsDateUtils

        public ELOAsDateUtils()
    • Method Detail

      • isoFromDate

        public static java.lang.String isoFromDate​(java.util.Date date)
        Erzeugt aus dem angegebenen Java-Datum ein Iso-Datum mit Datum und Uhrzeit.
        Parameters:
        date - Java-Datum
        Returns:
        Iso-Datum
      • isoFromDateShort

        public static java.lang.String isoFromDateShort​(java.util.Date date)
        Erzeugt aus dem angegebenen Java-Datum ein Iso-Datum mit Datum und ohne Uhrzeit.
        Parameters:
        date - Java-Datum
        Returns:
        Iso-Datum
      • dateFromIso

        public static java.util.Date dateFromIso​(java.lang.String isoDate)
        Erzeugt aus einem Iso-Datum ein Java-Datum.
        Parameters:
        isoDate - Datum in Textform (JJJJMMTTHHMMSS)
        Returns:
        das geparste Datum oder null bei ungültigen Eingaben
      • isValidIsoDate

        public static boolean isValidIsoDate​(java.lang.String isoDate)
        Meldet zurück, ob das angegebene Datum ein gültiges IsoDatum ist.
        Parameters:
        isoDate - Iso-Datum
        Returns:
        Gültiges Iso-Datum
      • hasTime

        public static boolean hasTime​(java.util.Date date)
        Meldet zurück, ob das Datum eine Uhrzeit hat (Stunde, Minute, Sekunde oder Millisekunde ungleich 0).
        Parameters:
        date - Datum
        Returns:
        Datum enthält Uhrzeit
      • isNewerThan

        public static boolean isNewerThan​(java.util.Date firstDate,
                                          java.util.Date secondDate)
        Meldet zurück, ob das erste Datum nach dem zweiten Datum liegt.
        Parameters:
        firstDate - Erstes Datum
        secondDate - Zweites Datum
        Returns:
        Erstes Datum liegt nach dem zweiten Datum
      • getDateWithoutTime

        public static java.util.Date getDateWithoutTime​(java.util.Date date)
        Liefert das Datum ohne Uhrzeit zurück (0:00:00.000).
        Parameters:
        date - Datum
        Returns:
        Datum ohne Uhrzeit
      • getIsoDate

        public static java.lang.String getIsoDate​(java.io.File file)
        Liefert das Datum der letzten Änderung der Datei als ISO-Datum zurück.
        Parameters:
        file - Datei
        Returns:
        ISO-Datum der letzten Dateiänderung
      • now

        public static java.util.Date now​(int offsetMinutes)
        Liefert das heutige Datum mit den angegebenen addierten Minuten zurück.
        Parameters:
        offsetMinutes - Anzahl der Minuten
        Returns:
        Heutiges Datum
      • getToday

        public static java.util.Date getToday()
        Liefert das heutige Datum mit der aktuellen Uhrzeit zurück.
        Returns:
        aktuelles Datum mit Uhrzeit
      • getYesterday

        public static java.util.Date getYesterday()
        Liefert das gestrige Datum zurück.
        Returns:
        Gestriges Datum
      • getTomorrow

        public static java.util.Date getTomorrow()
        Liefert das Datum von morgen zurück.
        Returns:
        Datum von morgen
      • getCurrentWeekStart

        public static java.util.Date getCurrentWeekStart()
        Liefert den Anfang der aktuellen Woche zurück.
        Returns:
        Anfang der Woche
      • getCurrentWeekEnd

        public static java.util.Date getCurrentWeekEnd()
        Liefert das Ende der aktuellen Woche zurück.
        Returns:
        Ende der aktuellen Woche
      • displayDateFromDate

        public static java.lang.String displayDateFromDate​(java.util.Date date)
        Formatiert ein Java Datum in eine Datumsanzeige um. Dabei wird die übliche Formatierung M/D/Y oder T.M.J berücksichtigt. Falls das Datum auch eine Uhrzeit enthält, wird diese ignoriert. Bei null wir ein leerer String zurückgegeben.
        Parameters:
        date - Datum, 8-stellig oder mehr
        Returns:
        Datumsanzeige
      • displayDateFromDate

        public static java.lang.String displayDateFromDate​(java.util.Date date,
                                                           java.text.DateFormat dateFormat)
        Formatiert ein Java Datum in eine Datumsanzeige um. Dabei wird die übliche Formatierung M/D/Y oder T.M.J berücksichtigt. Über den Parameter dateFormat kann eingestellt werden, ob Zeitangaben ignoriert werden und ob die Zeit Minutengenau oder Sekundengenau ausgegeben wird.
        Parameters:
        date - Datum, 8-stellig oder mehr
        dateFormat - Art der Zeitdarstellung
        Returns:
        Datumsanzeige (optional mit Zeit)
      • displayDateFromIso

        public static java.lang.String displayDateFromIso​(java.lang.String isoDate)
        Formatiert einen ISO Datumsstring in eine Datumsanzeige um. Dabei wird die übliche Formatierung M/D/Y oder T.M.J berücksichtigt. Falls das Datum auch eine Uhrzeit enthält, wird diese ignoriert. Bei null wir ein leerer String zurückgegeben.
        Parameters:
        isoDate - ISO-Datum, 8-stellig oder mehr
        Returns:
        Datumsanzeige
      • displayDateFromIsoWithTime

        public static java.lang.String displayDateFromIsoWithTime​(java.lang.String isoDate)
        Formatiert einen ISO Datumsstring in eine Datumsanzeige um. Dabei wird die übliche Formatierung M/D/Y oder T.M.J berücksichtigt. Falls das Datum auch eine Uhrzeit enthält, wird diese ebenfalls formatiert. Bei null wird ein leerer String zurückgegeben.
        Parameters:
        isoDate - ISO Datum, 8-stellig oder mehr
        Returns:
        Datumsanzeige
      • displayDateFromIso

        public static java.lang.String displayDateFromIso​(java.lang.String isoDate,
                                                          java.text.DateFormat dateFormat)
        Formatiert einen ISO Datumsstring in eine Datumsanzeige um. Dabei wird die übliche Formatierung M/D/Y oder T.M.J berücksichtigt. Über den Parameter dateFormat kann eingestellt werden, ob Zeitangaben ignoriert werden und ob die Zeit Minutengenau oder Sekundengenau ausgegeben wird.
        Parameters:
        isoDate - ISO-Datum, 8-stellig oder mehr
        dateFormat - Art der Zeitdarstellung
        Returns:
        Datumsanzeige (optional mit Zeit)
      • parseDate

        public static java.util.Date parseDate​(java.lang.String text)
        Liefert das Datum zum übergebenen Text, oder null, falls der Text kein gültiges Datum ist. Es kann auch ein positiver oder negativer Offset zum aktuellen Datum angegeben werden, das ist dann eine Differenz in Tagen. Zusätzlich kann y oder j für eine Jahresdifferenz oder m für eine Monatsdifferenz angegeben werden: +1 +5d -2m +3y für morgen, in fünf Tagen, vor zwei Monaten und in drei Jahren.
        Parameters:
        text - Datumstext
        Returns:
        Java-Datum
      • dateFromInternalDate

        public static java.lang.String dateFromInternalDate​(int internalDate,
                                                            java.lang.String timeZone)
                                                     throws java.lang.Exception
        Liefert ein Iso-Datum aus dem angegebenen internen ELO-Datum zurück.
        Parameters:
        internalDate - Internes ELO-Datum
        timeZone - Zeitzone
        Returns:
        Iso-Datum
        Throws:
        java.lang.Exception
      • internalDateFromDate

        public static int internalDateFromDate​(java.lang.String isoDate,
                                               java.lang.String timeZone)
                                        throws java.lang.Exception
        Liefert ein internes ELO-Datum aus dem angegebenen Iso-Datum zurück.
        Parameters:
        isoDate - Iso-Datum
        timeZone - Zeitzone
        Returns:
        Internes ELO-Datum
        Throws:
        java.lang.Exception
      • getMonthWithSorting

        public static java.lang.String getMonthWithSorting​(int month)
                                                    throws java.lang.Exception
        Liefert den angegebenen Monat mit einer zweistelligen Nummer und seiner Bezeichnung zurück.
        Parameters:
        month - Monat als Zahl
        Returns:
        Monat mit zweistelliger Nummer und Bezeichnung
        Throws:
        java.lang.Exception
      • timestampFromDate

        public static java.lang.String timestampFromDate​(java.util.Date date)
        Erzeugt aus dem angegebenen Java-Datum ein ELO Zeitstempel mit Datum und Uhrzeit.
        Parameters:
        date - Java-Datum
        Returns:
        ELO Zeitstempel
      • isValidYear

        public static boolean isValidYear​(java.util.Date date)
                                   throws java.lang.Exception
        Überprüft, ob das Datum im möglichen Datumsbereich (Jahre 1000 bis 6000) ist.
        Parameters:
        date - zu prüfendes Datum
        Returns:
        True wenn das Datum gültig ist, False sonst
        Throws:
        java.lang.Exception
      • getEdgeOfDay

        public static java.util.Date getEdgeOfDay​(java.util.Date date,
                                                  boolean endOfDay)
                                           throws java.lang.Exception
        Liefert ein Datum mit der Anfangs/End-Zeit des angegebenen Datums.
        Parameters:
        date - Datum
        endOfDay - True für Uhrzeit 23:59:59:999, False für 00:00:00:000.
        Returns:
        der Tag mit passender Uhrzeit für Tagesanfang / Tagesende
        Throws:
        java.lang.Exception
      • getEdgeOfYear

        public static java.util.Date getEdgeOfYear​(java.util.Date yearDate,
                                                   boolean endOfYear)
                                            throws java.lang.Exception
        Liefert das Datum mit erstem/letztem Tag des Jahres und passender Uhrzeit.
        Parameters:
        yearDate - Datum dessen Jahr benutzt werden soll
        endOfYear - True für 31.12., False für 1.1.
        Returns:
        Java-Datum
        Throws:
        java.lang.Exception
      • getMilliseconds

        public static long getMilliseconds​(int dayCount)
                                    throws java.lang.Exception
        Liefert die Anzahl der Millisekunden der angegebenen Tage zurück.
        Parameters:
        dayCount - Anzahl der Tage
        Returns:
        Millisekunden
        Throws:
        java.lang.Exception
      • displayDuration

        public static java.lang.String displayDuration​(long millisec)
                                                throws java.lang.Exception
        Liefert eine Darstellung der Dauer in Stunden, Minuten, Sekunden für die angegebenen Millisekunden zurück.
        Parameters:
        millisec - Millisekunden
        Returns:
        Darstellung in Stunden/Minuten/Sekunden
        Throws:
        java.lang.Exception