Skip navigation links
EDB/Java
jp.ac.tokushima_u.db.common

Class ChronoUtility



  • public class ChronoUtility
    extends Object
    Class for Chrono/DateTime Utility. $Id: ChronoUtility.java,v 1.7 2025/01/07 08:32:32 alex Exp $
    • Constructor Detail

      • ChronoUtility

        public ChronoUtility()
    • Method Detail

      • nowAsEpochMillisecond

        public static long nowAsEpochMillisecond()
        現在時刻(エポックからのミリ秒単位の経過時間)を得る.
        Returns:
        現在時刻(エポックからのミリ秒単位の経過時間).
      • nowAsISO8601

        public static String nowAsISO8601()
        現在時刻をISO8601形式で得る.
        Returns:
        ISO8601形式の現在時刻.
      • nowAsLocalDateTime

        public static LocalDateTime nowAsLocalDateTime()
        現在時刻をシステムのデフォルトのZoneIdを使ってLocalDateTimeを得る.
        Returns:
        LocalDateTimeの現在時刻.
      • nowAsUTCDateTime

        public static ZonedDateTime nowAsUTCDateTime()
        現在時刻をUTCのZoneIdを使ってZonedDateTimeを得る.
        Returns:
        UTCの現在時刻.
      • epochMillisecondToDateTime

        public static ZonedDateTime epochMillisecondToDateTime(long millis)
        EpochMillisecondをUTCのZoneIdを使ってZonedDateTimeを得る.
        Parameters:
        millis - Epochからの経過Milliseconds.
        Returns:
        EpochMillisecondをUTC DateTimeに変換した結果.
      • dateTimeToISO8601

        public static String dateTimeToISO8601(LocalDateTime dt,
                                               ZoneId zoneId)
        LocalDateTimeをISO8601形式に変換する.
        Parameters:
        dt - LocalDateTime
        zoneId - Zone ID.
        Returns:
        ISO8601形式の時刻.
      • dateTimeToISO8601

        public static String dateTimeToISO8601(ZonedDateTime zdt)
        ZonedDateTimeをISO8601形式に変換する.
        Parameters:
        zdt - Zoned DateTime
        Returns:
        ISO8601形式の時刻.
      • nowAsLocalDateTimeText

        public static CharSequence nowAsLocalDateTimeText()
        現在時刻をローカル時刻で "YYYY-MM-DD hh:mm:ss"形式で表現する.
        Returns:
        文字列 "YYYY-MM-DD hh:mm:ss".
      • toDateTimeText

        public static CharSequence toDateTimeText(ZonedDateTime dt,
                                                  ZoneId zoneId)
        時刻をローカル時刻で "YYYY-MM-DD hh:mm:ss"形式で表現する.
        Parameters:
        dt - ZonedDateTime
        zoneId - ZoneId.
        Returns:
        文字列 "YYYY-MM-DD hh:mm:ss".
      • toDateTimeText

        public static CharSequence toDateTimeText(Temporal temp)
        時刻をローカル時刻で "YYYY-MM-DD hh:mm:ss"形式で表現する.
        Parameters:
        temp - DateTime.
        Returns:
        文字列 "YYYY-MM-DD hh:mm:ss".
      • toDateText

        public static CharSequence toDateText(ZonedDateTime dt,
                                              ZoneId zoneId)
        時刻をローカル時刻で "YYYY-MM-DD"形式で表現する.
        Parameters:
        dt - ZonedDateTime
        zoneId - ZoneId.
        Returns:
        文字列 "YYYY-MM-DD".
      • toDateText

        public static CharSequence toDateText(Temporal temp)
        時刻をローカル時刻で "YYYY-MM-DD"形式で表現する.
        Parameters:
        temp - DateTime.
        Returns:
        文字列 "YYYY-MM-DD".
      • dateTimeToISO8601

        public static String dateTimeToISO8601(ZonedDateTime zdt,
                                               boolean full)
        ZonedDateTimeをISO8601形式に変換する.
        Parameters:
        zdt - Zoned DateTime
        full - フルフォーマットで出力する.(ミリ秒まで)
        Returns:
        ISO8601形式の時刻.
      • localDateTimeOf

        public static LocalDateTime localDateTimeOf(int year,
                                                    int month,
                                                    int day,
                                                    int hour,
                                                    int minute,
                                                    int second,
                                                    int nano)
        フィールド値が範囲内に収まるように調整しながらLocalDateTimeを生成する.
        Parameters:
        year - 西暦年
        month - 月(1 - 12)
        day - 月(1 - 28, 29, 30, 31)
        hour - 時(0 - 59)
        minute - 分(0 - 59)
        second - 秒(0 - 59)
        nano - ナノ秒(0 - 999,999,999)
        Returns:
        LocalDateTimeオブジェクト
      • zonedDateTimeOf

        public static ZonedDateTime zonedDateTimeOf(int year,
                                                    int month,
                                                    int day,
                                                    int hour,
                                                    int minute,
                                                    int second,
                                                    int nano,
                                                    ZoneId zoneId)
        フィールド値が範囲内に収まるように調整しながらZonedDateTimeを生成する.
        Parameters:
        year - 西暦年
        month - 月(1 - 12)
        day - 月(1 - 28, 29, 30, 31)
        hour - 時(0 - 59)
        minute - 分(0 - 59)
        second - 秒(0 - 59)
        nano - ナノ秒(0 - 999,999,999)
        zoneId - ゾーン
        Returns:
        ZonedDateTimeオブジェクト
      • ISO8601toDateTime

        public static ZonedDateTime ISO8601toDateTime(String s)
        ISO8601表記の時刻をZonedDateTimeに変換する.
        Parameters:
        s - ISO8601表記の時刻.
        Returns:
        ZonedDateTimeオブジェクト
      • ISO8601toDateTime

        public static ZonedDateTime ISO8601toDateTime(String s,
                                                      ZoneId zoneId)
        ISO8601表記の時刻をZoneIdを指定してZonedDateTimeに変換する.
        Parameters:
        s - ISO8601表記の時刻.
        zoneId - ゾーン.
        Returns:
        ZonedDateTimeオブジェクト
      • calendarToISO8601

        public static String calendarToISO8601(Calendar cal)
      • calendarToISO8601

        public static String calendarToISO8601(Calendar cal,
                                               boolean full)
      • ISO8601toCalendar

        public static Calendar ISO8601toCalendar(String s)
      • convertADtoJEraYearString

        public static String convertADtoJEraYearString(int year,
                                                       int month,
                                                       int day)
        西暦YMDから和歴年を求めます. また,変換の際に特定の年は,次の文字に置き換わります.
         1年  ... 元年
         
        日付の年が明治以前の場合は,西暦に変換されます.
        Parameters:
        year - 西暦年
        month - 月
        day - 日
        Returns:
        変換に成功した場合は,和暦の年の文字列を返します.
      • monthNameToInteger

        public static int monthNameToInteger(String txt)
        名前の月を整数に変換する.
        Parameters:
        txt - 月の名前
        Returns:
        month (1, 2, 3, ..., 12) 変換に失敗した場合には0.
EDB/Java

EDB Working Group at Tue Jun 10 17:08:59 JST 2025