Class DateFormatSymbols

  • All Implemented Interfaces:
    java.io.Serializable, java.lang.Cloneable
    Direct Known Subclasses:
    ChineseDateFormatSymbols

    public class DateFormatSymbols
    extends java.lang.Object
    implements java.io.Serializable, java.lang.Cloneable
    .

    DateFormatSymbols is a public class for encapsulating localizable date-time formatting data, such as the names of the months, the names of the days of the week, and the time zone data. DateFormat and SimpleDateFormat both use DateFormatSymbols to encapsulate this information.

    Typically you shouldn't use DateFormatSymbols directly. Rather, you are encouraged to create a date-time formatter with the DateFormat class's factory methods: getTimeInstance, getDateInstance, or getDateTimeInstance. These methods automatically create a DateFormatSymbols for the formatter so that you don't have to. After the formatter is created, you may modify its format pattern using the setPattern method. For more information about creating formatters using DateFormat's factory methods, see DateFormat.

    If you decide to create a date-time formatter with a specific format pattern for a specific locale, you can do so with:

     new SimpleDateFormat(aPattern, new DateFormatSymbols(aLocale)).
     

    DateFormatSymbols objects are clonable. When you obtain a DateFormatSymbols object, feel free to modify the date-time formatting data. For instance, you can replace the localized date-time format pattern characters with the ones that you feel easy to remember. Or you can change the representative cities to your favorite ones.

    New DateFormatSymbols subclasses may be added to support SimpleDateFormat for date-time formatting for additional locales.

    See Also:
    DateFormat, SimpleDateFormat, SimpleTimeZone, Serialized Form
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static int ABBREVIATED
      Constant for width.
      (package private) java.lang.String[] abbreviatedDayPeriods
      Localized names for abbreviated (== short) day periods.
      private ULocale actualLocale
      The locale containing data used to construct this object, or null.
      (package private) static java.lang.String ALTERNATE_TIME_SEPARATOR
      This alternate time separator is always recognized when parsing.
      (package private) java.lang.String[] ampms
      AM and PM strings.
      (package private) java.lang.String[] ampmsNarrow
      narrow AM and PM strings.
      private static java.lang.String[][] CALENDAR_CLASSES  
      (package private) java.util.Map<DateFormatSymbols.CapitalizationContextUsage,​boolean[]> capitalization
      Capitalization transforms.
      private static java.util.Map<java.lang.String,​DateFormatSymbols.CapitalizationContextUsage> contextUsageTypeMap
      Map from resource key to CapitalizationContextUsage value
      private static java.lang.String[] DAY_PERIOD_KEYS
      Keys for dayPeriods
      (package private) static java.lang.String DEFAULT_TIME_SEPARATOR
      This default time separator is used for formatting when the locale doesn't specify any time separator, and always recognized when parsing.
      private static CacheBase<java.lang.String,​DateFormatSymbols,​ULocale> DFSCACHE  
      static int DT_CONTEXT_COUNT
      Deprecated.
      This API is ICU internal only.
      (package private) static int DT_LEAP_MONTH_PATTERN_FORMAT_ABBREV
      Somewhat temporary constant for leap month pattern type, adequate for Chinese calendar.
      (package private) static int DT_LEAP_MONTH_PATTERN_FORMAT_NARROW
      Somewhat temporary constant for leap month pattern type, adequate for Chinese calendar.
      (package private) static int DT_LEAP_MONTH_PATTERN_FORMAT_WIDE
      Somewhat temporary constant for leap month pattern type, adequate for Chinese calendar.
      (package private) static int DT_LEAP_MONTH_PATTERN_NUMERIC
      Somewhat temporary constant for leap month pattern type, adequate for Chinese calendar.
      (package private) static int DT_LEAP_MONTH_PATTERN_STANDALONE_ABBREV
      Somewhat temporary constant for leap month pattern type, adequate for Chinese calendar.
      (package private) static int DT_LEAP_MONTH_PATTERN_STANDALONE_NARROW
      Somewhat temporary constant for leap month pattern type, adequate for Chinese calendar.
      (package private) static int DT_LEAP_MONTH_PATTERN_STANDALONE_WIDE
      Somewhat temporary constant for leap month pattern type, adequate for Chinese calendar.
      (package private) static int DT_MONTH_PATTERN_COUNT
      Somewhat temporary constant for month pattern count, adequate for Chinese calendar.
      static int DT_WIDTH_COUNT
      Deprecated.
      This API is ICU internal only.
      (package private) java.lang.String[] eraNames
      Era name strings.
      (package private) java.lang.String[] eras
      Era strings.
      static int FORMAT
      Constant for context.
      private static java.lang.String[] LEAP_MONTH_PATTERNS_PATHS
      Resource bundle paths for each leap month pattern
      (package private) java.lang.String[] leapMonthPatterns
      All leap month patterns, for example "{0}bis".
      (package private) java.lang.String localPatternChars
      Localized date-time pattern characters.
      (package private) static int millisPerHour
      Useful constant for defining timezone offsets.
      (package private) java.lang.String[] months
      Month strings.
      static int NARROW
      Constant for width.
      (package private) java.lang.String[] narrowDayPeriods
      Localized names for narrow day periods.
      (package private) java.lang.String[] narrowEras
      Narrow era names.
      (package private) java.lang.String[] narrowMonths
      Narrow month strings.
      (package private) java.lang.String[] narrowQuarters
      Narrow quarter names.
      (package private) java.lang.String[] narrowWeekdays
      CLDR-style format narrow weekday strings, for example: "S", "M", etc.
      static int NUMERIC
      Deprecated.
      This API is ICU internal only.
      (package private) static java.lang.String patternChars
      Unlocalized date-time pattern characters.
      (package private) java.lang.String[] quarters
      Full quarter names.
      private ULocale requestedLocale  
      private static long serialVersionUID  
      static int SHORT
      Constant for width; only supported for weekdays.
      (package private) java.lang.String[] shorterWeekdays
      CLDR-style format short weekday strings, for example: "Su", "Mo", etc.
      (package private) java.lang.String[] shortMonths
      Short month strings.
      (package private) java.lang.String[] shortQuarters
      Abbreviated quarter names.
      (package private) java.lang.String[] shortWeekdays
      CLDR-style format abbreviated (not short) weekday strings, for example: "Sun", "Mon", etc.
      (package private) java.lang.String[] shortYearNames
      Cyclic year names, for example: "jia-zi", "yi-chou", ...
      (package private) java.lang.String[] shortZodiacNames
      Cyclic zodiac names, for example: "Rat", "Ox", "Tiger", etc.
      static int STANDALONE
      Constant for context.
      (package private) java.lang.String[] standaloneAbbreviatedDayPeriods
      Localized names for standalone abbreviated (== short) day periods.
      (package private) java.lang.String[] standaloneMonths
      Standalone month strings.
      (package private) java.lang.String[] standaloneNarrowDayPeriods
      Localized names for standalone narrow day periods.
      (package private) java.lang.String[] standaloneNarrowMonths
      Standalone narrow month strings.
      (package private) java.lang.String[] standaloneNarrowQuarters
      Standalone narrow quarter names.
      (package private) java.lang.String[] standaloneNarrowWeekdays
      Standalone narrow weekday strings.
      (package private) java.lang.String[] standaloneQuarters
      Standalone full quarter names.
      (package private) java.lang.String[] standaloneShorterWeekdays
      CLDR-style standalone short weekday strings, for example: "Sun", "Mon", etc.
      (package private) java.lang.String[] standaloneShortMonths
      Standalone short month strings.
      (package private) java.lang.String[] standaloneShortQuarters
      Standalone abbreviated quarter names.
      (package private) java.lang.String[] standaloneShortWeekdays
      CLDR-style standalone abbreviated (not short) weekday strings, for example: "Sun", "Mon", etc.
      (package private) java.lang.String[] standaloneWeekdays
      Standalone wide weekday strings.
      (package private) java.lang.String[] standaloneWideDayPeriods
      Localized names for standalone wide day periods.
      private java.lang.String timeSeparator
      Time separator string.
      private ULocale validLocale
      The most specific locale containing any resource data, or null.
      (package private) java.lang.String[] weekdays
      Format wide weekday strings, for example: "Sunday", "Monday", etc.
      static int WIDE
      Constant for width.
      (package private) java.lang.String[] wideDayPeriods
      Localized names for wide day periods.
      private java.lang.String[][] zoneStrings
      Localized names of time zones in this locale.
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
        DateFormatSymbols()
      Constructs a DateFormatSymbols object by loading format data from resources for the default FORMAT locale.
        DateFormatSymbols​(Calendar cal, ULocale locale)
      Returns the DateFormatSymbols object that should be used to format a calendar system's dates in the given locale.
        DateFormatSymbols​(Calendar cal, java.util.Locale locale)
      Returns the DateFormatSymbols object that should be used to format a calendar system's dates in the given locale.
        DateFormatSymbols​(ULocale locale)
      Constructs a DateFormatSymbols object by loading format data from resources for the given ulocale.
      private DateFormatSymbols​(ULocale desiredLocale, ICUResourceBundle b, java.lang.String calendarType)
      Private, for cache.getInstance().
        DateFormatSymbols​(java.lang.Class<? extends Calendar> calendarClass, ULocale locale)
      Variant of DateFormatSymbols(Calendar, ULocale) that takes the Calendar class instead of a Calendar instance.
        DateFormatSymbols​(java.lang.Class<? extends Calendar> calendarClass, java.util.Locale locale)
      Variant of DateFormatSymbols(Calendar, Locale) that takes the Calendar class instead of a Calendar instance.
        DateFormatSymbols​(java.util.Locale locale)
      Constructs a DateFormatSymbols object by loading format data from resources for the given locale.
        DateFormatSymbols​(java.util.ResourceBundle bundle, ULocale locale)
      Fetches a custom calendar's DateFormatSymbols out of the given resource bundle.
        DateFormatSymbols​(java.util.ResourceBundle bundle, java.util.Locale locale)
      Fetches a custom calendar's DateFormatSymbols out of the given resource bundle.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods 
      Modifier and Type Method Description
      private static boolean arrayOfArrayEquals​(java.lang.Object[][] aa1, java.lang.Object[][] aa2)  
      java.lang.Object clone()
      Overrides clone.
      private java.lang.String[] duplicate​(java.lang.String[] srcArray)  
      private java.lang.String[][] duplicate​(java.lang.String[][] srcArray)  
      boolean equals​(java.lang.Object obj)
      Overrides equals.
      java.lang.String[] getAmPmStrings()
      Returns am/pm strings.
      static java.util.Locale[] getAvailableLocales()
      Returns an array of all locales for which the getInstance methods of this class can return localized instances.
      static ULocale[] getAvailableULocales()
      Returns an array of all locales for which the getInstance methods of this class can return localized instances.
      static java.util.ResourceBundle getDateFormatBundle​(Calendar cal, ULocale locale)
      Deprecated.
      ICU 4.0
      static java.util.ResourceBundle getDateFormatBundle​(Calendar cal, java.util.Locale locale)
      Deprecated.
      ICU 4.0
      static java.util.ResourceBundle getDateFormatBundle​(java.lang.Class<? extends Calendar> calendarClass, ULocale locale)
      Deprecated.
      ICU 4.0
      static java.util.ResourceBundle getDateFormatBundle​(java.lang.Class<? extends Calendar> calendarClass, java.util.Locale locale)
      Deprecated.
      ICU 4.0
      java.lang.String[] getEraNames()
      Returns full era name strings.
      java.lang.String[] getEras()
      Returns abbreviated era strings.
      static DateFormatSymbols getInstance()
      Returns a DateFormatSymbols instance for the default locale.
      static DateFormatSymbols getInstance​(ULocale locale)
      Returns a DateFormatSymbols instance for the given locale.
      static DateFormatSymbols getInstance​(java.util.Locale locale)
      Returns a DateFormatSymbols instance for the given locale.
      java.lang.String getLeapMonthPattern​(int context, int width)
      Deprecated.
      This API is ICU internal only.
      ULocale getLocale​(ULocale.Type type)
      Returns the locale that was used to create this object, or null.
      java.lang.String getLocalPatternChars()
      Returns localized date-time pattern characters.
      java.lang.String[] getMonths()
      Returns month strings.
      java.lang.String[] getMonths​(int context, int width)
      Returns month strings.
      java.lang.String[] getNarrowEras()
      Returns narrow era name strings.
      java.lang.String[] getQuarters​(int context, int width)
      Returns quarter strings.
      java.lang.String[] getShortMonths()
      Returns short month strings.
      java.lang.String[] getShortWeekdays()
      Returns abbreviated weekday strings; for example: "Sun", "Mon", etc.
      java.lang.String getTimeSeparatorString()
      Deprecated.
      This API is ICU internal only.
      java.lang.String[] getWeekdays()
      Returns wide weekday strings.
      java.lang.String[] getWeekdays​(int context, int width)
      Returns weekday strings.
      java.lang.String[] getYearNames​(int context, int width)
      Returns cyclic year name strings if the calendar has them, for example: "jia-zi", "yi-chou", etc.
      java.lang.String[] getZodiacNames​(int context, int width)
      Returns calendar zodiac name strings if the calendar has them, for example: "Rat", "Ox", "Tiger", etc.
      java.lang.String[][] getZoneStrings()
      Returns time zone strings.
      int hashCode()
      Override hashCode.
      (package private) void initializeData​(DateFormatSymbols dfs)
      Initializes format symbols using another instance.
      protected void initializeData​(ULocale desiredLocale, ICUResourceBundle b, java.lang.String calendarType)
      Deprecated.
      This API is ICU internal only.
      protected void initializeData​(ULocale desiredLocale, java.lang.String type)
      Initializes format symbols for the locale and calendar type
      private java.lang.String[] loadDayPeriodStrings​(java.util.Map<java.lang.String,​java.lang.String> resourceMap, java.lang.String[] copyFrom)
      Loads localized names for day periods in the requested format.
      private void readObject​(java.io.ObjectInputStream stream)
      3.8 or older version did not have localized GMT format patterns.
      void setAmPmStrings​(java.lang.String[] newAmpms)
      Sets am/pm strings.
      void setEraNames​(java.lang.String[] newEraNames)
      Sets full era name strings.
      void setEras​(java.lang.String[] newEras)
      Sets abbreviated era strings.
      void setLeapMonthPattern​(java.lang.String leapMonthPattern, int context, int width)
      Deprecated.
      This API is ICU internal only.
      (package private) void setLocale​(ULocale valid, ULocale actual)
      Sets information about the locales that were used to create this object.
      void setLocalPatternChars​(java.lang.String newLocalPatternChars)
      Sets localized date-time pattern characters.
      void setMonths​(java.lang.String[] newMonths)
      Sets month strings.
      void setMonths​(java.lang.String[] newMonths, int context, int width)
      Sets month strings.
      void setNarrowEras​(java.lang.String[] newNarrowEras)
      Sets narrow era name strings.
      void setQuarters​(java.lang.String[] newQuarters, int context, int width)
      Sets quarter strings.
      void setShortMonths​(java.lang.String[] newShortMonths)
      Sets short month strings.
      void setShortWeekdays​(java.lang.String[] newAbbrevWeekdays)
      Sets abbreviated weekday strings; for example: "Sun", "Mon", etc.
      void setTimeSeparatorString​(java.lang.String newTimeSeparator)
      Deprecated.
      This API is ICU internal only.
      void setWeekdays​(java.lang.String[] newWeekdays)
      Sets wide weekday strings.
      void setWeekdays​(java.lang.String[] newWeekdays, int context, int width)
      Sets weekday strings.
      void setYearNames​(java.lang.String[] yearNames, int context, int width)
      Sets cyclic year name strings, for example: "jia-zi", "yi-chou", etc.
      void setZodiacNames​(java.lang.String[] zodiacNames, int context, int width)
      Sets calendar zodiac name strings, for example: "Rat", "Ox", "Tiger", etc.
      void setZoneStrings​(java.lang.String[][] newZoneStrings)
      Sets time zone strings.
      • Methods inherited from class java.lang.Object

        finalize, getClass, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • NUMERIC

        @Deprecated
        public static final int NUMERIC
        Deprecated.
        This API is ICU internal only.
        Constant for context. NUMERIC context is only supported for leapMonthPatterns.
        See Also:
        Constant Field Values
      • DT_CONTEXT_COUNT

        @Deprecated
        public static final int DT_CONTEXT_COUNT
        Deprecated.
        This API is ICU internal only.
        Constant for context.
        See Also:
        Constant Field Values
      • SHORT

        public static final int SHORT
        Constant for width; only supported for weekdays.
        See Also:
        Constant Field Values
      • DT_WIDTH_COUNT

        @Deprecated
        public static final int DT_WIDTH_COUNT
        Deprecated.
        This API is ICU internal only.
        Constant for width.
        See Also:
        Constant Field Values
      • DT_LEAP_MONTH_PATTERN_FORMAT_WIDE

        static final int DT_LEAP_MONTH_PATTERN_FORMAT_WIDE
        Somewhat temporary constant for leap month pattern type, adequate for Chinese calendar.
        See Also:
        Constant Field Values
      • DT_LEAP_MONTH_PATTERN_FORMAT_ABBREV

        static final int DT_LEAP_MONTH_PATTERN_FORMAT_ABBREV
        Somewhat temporary constant for leap month pattern type, adequate for Chinese calendar.
        See Also:
        Constant Field Values
      • DT_LEAP_MONTH_PATTERN_FORMAT_NARROW

        static final int DT_LEAP_MONTH_PATTERN_FORMAT_NARROW
        Somewhat temporary constant for leap month pattern type, adequate for Chinese calendar.
        See Also:
        Constant Field Values
      • DT_LEAP_MONTH_PATTERN_STANDALONE_WIDE

        static final int DT_LEAP_MONTH_PATTERN_STANDALONE_WIDE
        Somewhat temporary constant for leap month pattern type, adequate for Chinese calendar.
        See Also:
        Constant Field Values
      • DT_LEAP_MONTH_PATTERN_STANDALONE_ABBREV

        static final int DT_LEAP_MONTH_PATTERN_STANDALONE_ABBREV
        Somewhat temporary constant for leap month pattern type, adequate for Chinese calendar.
        See Also:
        Constant Field Values
      • DT_LEAP_MONTH_PATTERN_STANDALONE_NARROW

        static final int DT_LEAP_MONTH_PATTERN_STANDALONE_NARROW
        Somewhat temporary constant for leap month pattern type, adequate for Chinese calendar.
        See Also:
        Constant Field Values
      • DT_LEAP_MONTH_PATTERN_NUMERIC

        static final int DT_LEAP_MONTH_PATTERN_NUMERIC
        Somewhat temporary constant for leap month pattern type, adequate for Chinese calendar.
        See Also:
        Constant Field Values
      • DT_MONTH_PATTERN_COUNT

        static final int DT_MONTH_PATTERN_COUNT
        Somewhat temporary constant for month pattern count, adequate for Chinese calendar.
        See Also:
        Constant Field Values
      • DEFAULT_TIME_SEPARATOR

        static final java.lang.String DEFAULT_TIME_SEPARATOR
        This default time separator is used for formatting when the locale doesn't specify any time separator, and always recognized when parsing.
        See Also:
        Constant Field Values
      • ALTERNATE_TIME_SEPARATOR

        static final java.lang.String ALTERNATE_TIME_SEPARATOR
        This alternate time separator is always recognized when parsing.
        See Also:
        Constant Field Values
      • eras

        java.lang.String[] eras
        Era strings. For example: "AD" and "BC". An array of 2 strings, indexed by Calendar.BC and Calendar.AD.
      • eraNames

        java.lang.String[] eraNames
        Era name strings. For example: "Anno Domini" and "Before Christ". An array of 2 strings, indexed by Calendar.BC and Calendar.AD.
      • narrowEras

        java.lang.String[] narrowEras
        Narrow era names. For example: "A" and "B". An array of 2 strings, indexed by Calendar.BC and Calendar.AD.
      • months

        java.lang.String[] months
        Month strings. For example: "January", "February", etc. An array of 13 strings (some calendars have 13 months), indexed by Calendar.JANUARY, Calendar.FEBRUARY, etc.
      • shortMonths

        java.lang.String[] shortMonths
        Short month strings. For example: "Jan", "Feb", etc. An array of 13 strings (some calendars have 13 months), indexed by Calendar.JANUARY, Calendar.FEBRUARY, etc.
      • narrowMonths

        java.lang.String[] narrowMonths
        Narrow month strings. For example: "J", "F", etc. An array of 13 strings (some calendars have 13 months), indexed by Calendar.JANUARY, Calendar.FEBRUARY, etc.
      • standaloneMonths

        java.lang.String[] standaloneMonths
        Standalone month strings. For example: "January", "February", etc. An array of 13 strings (some calendars have 13 months), indexed by Calendar.JANUARY, Calendar.FEBRUARY, etc.
      • standaloneShortMonths

        java.lang.String[] standaloneShortMonths
        Standalone short month strings. For example: "Jan", "Feb", etc. An array of 13 strings (some calendars have 13 months), indexed by Calendar.JANUARY, Calendar.FEBRUARY, etc.
      • standaloneNarrowMonths

        java.lang.String[] standaloneNarrowMonths
        Standalone narrow month strings. For example: "J", "F", etc. An array of 13 strings (some calendars have 13 months), indexed by Calendar.JANUARY, Calendar.FEBRUARY, etc.
      • weekdays

        java.lang.String[] weekdays
        Format wide weekday strings, for example: "Sunday", "Monday", etc. An array of 8 strings, indexed by Calendar.SUNDAY, Calendar.MONDAY, etc. The element weekdays[0] is ignored.
      • shortWeekdays

        java.lang.String[] shortWeekdays
        CLDR-style format abbreviated (not short) weekday strings, for example: "Sun", "Mon", etc. An array of 8 strings, indexed by Calendar.SUNDAY, Calendar.MONDAY, etc. The element shortWeekdays[0] is ignored.
      • shorterWeekdays

        java.lang.String[] shorterWeekdays
        CLDR-style format short weekday strings, for example: "Su", "Mo", etc. An array of 8 strings, indexed by Calendar.SUNDAY, Calendar.MONDAY, etc. The element shorterWeekdays[0] is ignored.
      • narrowWeekdays

        java.lang.String[] narrowWeekdays
        CLDR-style format narrow weekday strings, for example: "S", "M", etc. An array of 8 strings, indexed by Calendar.SUNDAY, Calendar.MONDAY, etc. The element narrowWeekdays[0] is ignored.
      • standaloneWeekdays

        java.lang.String[] standaloneWeekdays
        Standalone wide weekday strings. For example: "Sunday", "Monday", etc. An array of 8 strings, indexed by Calendar.SUNDAY, Calendar.MONDAY, etc. The element standaloneWeekdays[0] is ignored.
      • standaloneShortWeekdays

        java.lang.String[] standaloneShortWeekdays
        CLDR-style standalone abbreviated (not short) weekday strings, for example: "Sun", "Mon", etc. An array of 8 strings, indexed by Calendar.SUNDAY, Calendar.MONDAY, etc. The element standaloneShortWeekdays[0] is ignored.
      • standaloneShorterWeekdays

        java.lang.String[] standaloneShorterWeekdays
        CLDR-style standalone short weekday strings, for example: "Sun", "Mon", etc. An array of 8 strings, indexed by Calendar.SUNDAY, Calendar.MONDAY, etc. The element standaloneShorterWeekdays[0] is ignored.
      • standaloneNarrowWeekdays

        java.lang.String[] standaloneNarrowWeekdays
        Standalone narrow weekday strings. For example: "S", "M", etc. An array of 8 strings, indexed by Calendar.SUNDAY, Calendar.MONDAY, etc. The element standaloneNarrowWeekdays[0] is ignored.
      • ampms

        java.lang.String[] ampms
        AM and PM strings. For example: "AM" and "PM". An array of 2 strings, indexed by Calendar.AM and Calendar.PM.
      • ampmsNarrow

        java.lang.String[] ampmsNarrow
        narrow AM and PM strings. For example: "a" and "p". An array of 2 strings, indexed by Calendar.AM and Calendar.PM.
      • timeSeparator

        private java.lang.String timeSeparator
        Time separator string. For example: ":".
      • shortQuarters

        java.lang.String[] shortQuarters
        Abbreviated quarter names. For example: "Q1", "Q2", "Q3", "Q4". An array of 4 strings indexed by the month divided by 3.
      • narrowQuarters

        java.lang.String[] narrowQuarters
        Narrow quarter names. For example: "1", "2", "3", "4". An array of 4 strings indexed by the month divided by 3.
      • quarters

        java.lang.String[] quarters
        Full quarter names. For example: "1st Quarter", "2nd Quarter", "3rd Quarter", "4th Quarter". An array of 4 strings, indexed by the month divided by 3.
      • standaloneShortQuarters

        java.lang.String[] standaloneShortQuarters
        Standalone abbreviated quarter names. For example: "Q1", "Q2", "Q3", "Q4". An array of 4 strings indexed by the month divided by 3.
      • standaloneNarrowQuarters

        java.lang.String[] standaloneNarrowQuarters
        Standalone narrow quarter names. For example: "1", "2", "3", "4". An array of 4 strings indexed by the month divided by 3.
      • standaloneQuarters

        java.lang.String[] standaloneQuarters
        Standalone full quarter names. For example: "1st Quarter", "2nd Quarter", "3rd Quarter", "4th Quarter". An array of 4 strings, indexed by the month divided by 3.
      • leapMonthPatterns

        java.lang.String[] leapMonthPatterns
        All leap month patterns, for example "{0}bis". An array of DT_MONTH_PATTERN_COUNT strings, indexed by the DT_LEAP_MONTH_PATTERN_XXX value.
      • shortYearNames

        java.lang.String[] shortYearNames
        Cyclic year names, for example: "jia-zi", "yi-chou", ... "gui-hai". An array of (normally) 60 strings, corresponding to cyclic years 1-60 (in Calendar YEAR field). Currently we only have data for format/abbreviated. For the others, just get from format/abbreviated, ignore set.
      • shortZodiacNames

        java.lang.String[] shortZodiacNames
        Cyclic zodiac names, for example: "Rat", "Ox", "Tiger", etc. An array of (normally) 12 strings. Currently we only have data for format/abbreviated. For the others, just get from format/abbreviated, ignore set.
      • zoneStrings

        private java.lang.String[][] zoneStrings
        Localized names of time zones in this locale. This is a two-dimensional array of strings of size n by m, where m is at least 5 and up to 7. Each of the n rows is an entry containing the localized names for a single TimeZone. Each such row contains (with i ranging from 0..n-1):
        • zoneStrings[i][0] - time zone ID
        • zoneStrings[i][1] - long name of zone in standard time
        • zoneStrings[i][2] - short name of zone in standard time
        • zoneStrings[i][3] - long name of zone in daylight savings time
        • zoneStrings[i][4] - short name of zone in daylight savings time
        • zoneStrings[i][5] - location name of zone
        • zoneStrings[i][6] - long generic name of zone
        • zoneStrings[i][7] - short generic of zone
        The zone ID is not localized; it corresponds to the ID value associated with a system time zone object. All other entries are localized names. If a zone does not implement daylight savings time, the daylight savings time names are ignored. Note:CLDR 1.5 introduced metazone and its historical mappings. This simple two-dimensional array is no longer sufficient to represent localized names and its historic changes. Since ICU 3.8.1, localized zone names extracted from ICU locale data is stored in a ZoneStringFormat instance. But we still need to support the old way of customizing localized zone names, so we keep this field for the purpose.
        See Also:
        TimeZone
      • patternChars

        static final java.lang.String patternChars
        Unlocalized date-time pattern characters. For example: 'y', 'd', etc. All locales use the same unlocalized pattern characters.
        See Also:
        Constant Field Values
      • localPatternChars

        java.lang.String localPatternChars
        Localized date-time pattern characters. For example, a locale may wish to use 'u' rather than 'y' to represent years in its date format pattern strings. This string must be exactly 18 characters long, with the index of the characters described by DateFormat.ERA_FIELD, DateFormat.YEAR_FIELD, etc. Thus, if the string were "Xz...", then localized patterns would use 'X' for era and 'z' for year.
      • abbreviatedDayPeriods

        java.lang.String[] abbreviatedDayPeriods
        Localized names for abbreviated (== short) day periods. An array of strings, in the order of DayPeriod constants.
      • wideDayPeriods

        java.lang.String[] wideDayPeriods
        Localized names for wide day periods. An array of strings, in the order of DayPeriod constants.
      • narrowDayPeriods

        java.lang.String[] narrowDayPeriods
        Localized names for narrow day periods. An array of strings, in the order of DayPeriod constants.
      • standaloneAbbreviatedDayPeriods

        java.lang.String[] standaloneAbbreviatedDayPeriods
        Localized names for standalone abbreviated (== short) day periods. An array of strings, in the order of DayPeriod constants.
      • standaloneWideDayPeriods

        java.lang.String[] standaloneWideDayPeriods
        Localized names for standalone wide day periods. An array of strings, in the order of DayPeriod constants.
      • standaloneNarrowDayPeriods

        java.lang.String[] standaloneNarrowDayPeriods
        Localized names for standalone narrow day periods. An array of strings, in the order of DayPeriod constants.
      • CALENDAR_CLASSES

        private static final java.lang.String[][] CALENDAR_CLASSES
      • capitalization

        java.util.Map<DateFormatSymbols.CapitalizationContextUsage,​boolean[]> capitalization
        Capitalization transforms. For each usage type, the first array element indicates whether to titlecase for uiListOrMenu context, the second indicates whether to titlecase for stand-alone context.
      • millisPerHour

        static final int millisPerHour
        Useful constant for defining timezone offsets.
        See Also:
        Constant Field Values
      • LEAP_MONTH_PATTERNS_PATHS

        private static final java.lang.String[] LEAP_MONTH_PATTERNS_PATHS
        Resource bundle paths for each leap month pattern
      • DAY_PERIOD_KEYS

        private static final java.lang.String[] DAY_PERIOD_KEYS
        Keys for dayPeriods
      • requestedLocale

        private ULocale requestedLocale
      • validLocale

        private ULocale validLocale
        The most specific locale containing any resource data, or null.
        See Also:
        ULocale
      • actualLocale

        private ULocale actualLocale
        The locale containing data used to construct this object, or null.
        See Also:
        ULocale
    • Constructor Detail

      • DateFormatSymbols

        public DateFormatSymbols()
        Constructs a DateFormatSymbols object by loading format data from resources for the default FORMAT locale.
        Throws:
        java.util.MissingResourceException - if the resources for the default locale cannot be found or cannot be loaded.
        See Also:
        ULocale.Category.FORMAT
      • DateFormatSymbols

        public DateFormatSymbols​(java.util.Locale locale)
        Constructs a DateFormatSymbols object by loading format data from resources for the given locale.
        Throws:
        java.util.MissingResourceException - if the resources for the specified locale cannot be found or cannot be loaded.
      • DateFormatSymbols

        public DateFormatSymbols​(ULocale locale)
        Constructs a DateFormatSymbols object by loading format data from resources for the given ulocale.
        Throws:
        java.util.MissingResourceException - if the resources for the specified locale cannot be found or cannot be loaded.
      • DateFormatSymbols

        private DateFormatSymbols​(ULocale desiredLocale,
                                  ICUResourceBundle b,
                                  java.lang.String calendarType)
        Private, for cache.getInstance().
      • DateFormatSymbols

        public DateFormatSymbols​(Calendar cal,
                                 java.util.Locale locale)
        Returns the DateFormatSymbols object that should be used to format a calendar system's dates in the given locale.
        Parameters:
        cal - The calendar system whose date format symbols are desired.
        locale - The locale whose symbols are desired.
        See Also:
        DateFormatSymbols(java.util.Locale)
      • DateFormatSymbols

        public DateFormatSymbols​(Calendar cal,
                                 ULocale locale)
        Returns the DateFormatSymbols object that should be used to format a calendar system's dates in the given locale.
        Parameters:
        cal - The calendar system whose date format symbols are desired.
        locale - The ulocale whose symbols are desired.
        See Also:
        DateFormatSymbols(java.util.Locale)
      • DateFormatSymbols

        public DateFormatSymbols​(java.lang.Class<? extends Calendar> calendarClass,
                                 java.util.Locale locale)
        Variant of DateFormatSymbols(Calendar, Locale) that takes the Calendar class instead of a Calendar instance.
        See Also:
        DateFormatSymbols(Calendar, Locale)
      • DateFormatSymbols

        public DateFormatSymbols​(java.lang.Class<? extends Calendar> calendarClass,
                                 ULocale locale)
        Variant of DateFormatSymbols(Calendar, ULocale) that takes the Calendar class instead of a Calendar instance.
        See Also:
        DateFormatSymbols(Calendar, Locale)
      • DateFormatSymbols

        public DateFormatSymbols​(java.util.ResourceBundle bundle,
                                 java.util.Locale locale)
        Fetches a custom calendar's DateFormatSymbols out of the given resource bundle. Symbols that are not overridden are inherited from the default DateFormatSymbols for the locale.
        See Also:
        DateFormatSymbols(java.util.Locale)
      • DateFormatSymbols

        public DateFormatSymbols​(java.util.ResourceBundle bundle,
                                 ULocale locale)
        Fetches a custom calendar's DateFormatSymbols out of the given resource bundle. Symbols that are not overridden are inherited from the default DateFormatSymbols for the locale.
        See Also:
        DateFormatSymbols(java.util.Locale)
    • Method Detail

      • getInstance

        public static DateFormatSymbols getInstance()
        Returns a DateFormatSymbols instance for the default locale. Unlike java.text.DateFormatSymbols#getInstance, this method simply returns new com.ibm.icu.text.DateFormatSymbols(). ICU does not support DateFormatSymbolsProvider introduced in Java 6 or its equivalent implementation for now.
        Returns:
        A DateFormatSymbols instance.
      • getInstance

        public static DateFormatSymbols getInstance​(java.util.Locale locale)
        Returns a DateFormatSymbols instance for the given locale. Unlike java.text.DateFormatSymbols#getInstance, this method simply returns new com.ibm.icu.text.DateFormatSymbols(locale). ICU does not support DateFormatSymbolsProvider introduced in Java 6 or its equivalent implementation for now.
        Parameters:
        locale - the locale.
        Returns:
        A DateFormatSymbols instance.
      • getInstance

        public static DateFormatSymbols getInstance​(ULocale locale)
        Returns a DateFormatSymbols instance for the given locale. Unlike java.text.DateFormatSymbols#getInstance, this method simply returns new com.ibm.icu.text.DateFormatSymbols(locale). ICU does not support DateFormatSymbolsProvider introduced in Java 6 or its equivalent implementation for now.
        Parameters:
        locale - the locale.
        Returns:
        A DateFormatSymbols instance.
      • getAvailableLocales

        public static java.util.Locale[] getAvailableLocales()
        Returns an array of all locales for which the getInstance methods of this class can return localized instances. Unlike java.text.DateFormatSymbols#getAvailableLocales, this method simply returns the array of Locales available in this class. ICU does not support DateFormatSymbolsProvider introduced in Java 6 or its equivalent implementation for now.
        Returns:
        An array of Locales for which localized DateFormatSymbols instances are available.
      • getAvailableULocales

        public static ULocale[] getAvailableULocales()
        Returns an array of all locales for which the getInstance methods of this class can return localized instances. Unlike java.text.DateFormatSymbols#getAvailableLocales, this method simply returns the array of ULocales available in this class. ICU does not support DateFormatSymbolsProvider introduced in Java 6 or its equivalent implementation for now.
        Returns:
        An array of ULocales for which localized DateFormatSymbols instances are available.
      • getEras

        public java.lang.String[] getEras()
        Returns abbreviated era strings. For example: "AD" and "BC".
        Returns:
        the era strings.
      • setEras

        public void setEras​(java.lang.String[] newEras)
        Sets abbreviated era strings. For example: "AD" and "BC".
        Parameters:
        newEras - the new era strings.
      • getEraNames

        public java.lang.String[] getEraNames()
        Returns full era name strings. For example: "Anno Domini" and "Before Christ".
        Returns:
        the era strings.
      • setEraNames

        public void setEraNames​(java.lang.String[] newEraNames)
        Sets full era name strings. For example: "Anno Domini" and "Before Christ".
        Parameters:
        newEraNames - the new era strings.
      • getNarrowEras

        public java.lang.String[] getNarrowEras()
        Returns narrow era name strings. For example: "A" and "B".
        Returns:
        the narrow era strings.
      • setNarrowEras

        public void setNarrowEras​(java.lang.String[] newNarrowEras)
        Sets narrow era name strings. For example: "A" and "B".
        Parameters:
        newNarrowEras - the new narrow era strings.
      • getMonths

        public java.lang.String[] getMonths()
        Returns month strings. For example: "January", "February", etc.
        Returns:
        the month strings.
      • getMonths

        public java.lang.String[] getMonths​(int context,
                                            int width)
        Returns month strings. For example: "January", "February", etc.
        Parameters:
        context - The month context, FORMAT or STANDALONE.
        width - The width or the returned month string, either WIDE, ABBREVIATED, or NARROW.
        Returns:
        the month strings.
      • setMonths

        public void setMonths​(java.lang.String[] newMonths)
        Sets month strings. For example: "January", "February", etc.
        Parameters:
        newMonths - the new month strings.
      • setMonths

        public void setMonths​(java.lang.String[] newMonths,
                              int context,
                              int width)
        Sets month strings. For example: "January", "February", etc.
        Parameters:
        newMonths - the new month strings.
        context - The formatting context, FORMAT or STANDALONE.
        width - The width of the month string, either WIDE, ABBREVIATED, or NARROW.
      • getShortMonths

        public java.lang.String[] getShortMonths()
        Returns short month strings. For example: "Jan", "Feb", etc.
        Returns:
        the short month strings.
      • setShortMonths

        public void setShortMonths​(java.lang.String[] newShortMonths)
        Sets short month strings. For example: "Jan", "Feb", etc.
        Parameters:
        newShortMonths - the new short month strings.
      • getWeekdays

        public java.lang.String[] getWeekdays()
        Returns wide weekday strings. For example: "Sunday", "Monday", etc.
        Returns:
        the weekday strings. Use Calendar.SUNDAY, Calendar.MONDAY, etc. to index the result array.
      • getWeekdays

        public java.lang.String[] getWeekdays​(int context,
                                              int width)
        Returns weekday strings. For example: "Sunday", "Monday", etc.
        Parameters:
        context - Formatting context, either FORMAT or STANDALONE.
        width - Width of strings to be returned, either WIDE, ABBREVIATED, SHORT, or NARROW
        Returns:
        the weekday strings. Use Calendar.SUNDAY, Calendar.MONDAY, etc. to index the result array.
      • setWeekdays

        public void setWeekdays​(java.lang.String[] newWeekdays,
                                int context,
                                int width)
        Sets weekday strings. For example: "Sunday", "Monday", etc.
        Parameters:
        newWeekdays - The new weekday strings.
        context - The formatting context, FORMAT or STANDALONE.
        width - The width of the strings, either WIDE, ABBREVIATED, SHORT, or NARROW.
      • setWeekdays

        public void setWeekdays​(java.lang.String[] newWeekdays)
        Sets wide weekday strings. For example: "Sunday", "Monday", etc.
        Parameters:
        newWeekdays - the new weekday strings. The array should be indexed by Calendar.SUNDAY, Calendar.MONDAY, etc.
      • getShortWeekdays

        public java.lang.String[] getShortWeekdays()
        Returns abbreviated weekday strings; for example: "Sun", "Mon", etc. (Note: the method name is misleading; it does not get the CLDR-style "short" weekday strings, e.g. "Su", "Mo", etc.)
        Returns:
        the abbreviated weekday strings. Use Calendar.SUNDAY, Calendar.MONDAY, etc. to index the result array.
      • setShortWeekdays

        public void setShortWeekdays​(java.lang.String[] newAbbrevWeekdays)
        Sets abbreviated weekday strings; for example: "Sun", "Mon", etc. (Note: the method name is misleading; it does not set the CLDR-style "short" weekday strings, e.g. "Su", "Mo", etc.)
        Parameters:
        newAbbrevWeekdays - the new abbreviated weekday strings. The array should be indexed by Calendar.SUNDAY, Calendar.MONDAY, etc.
      • getQuarters

        public java.lang.String[] getQuarters​(int context,
                                              int width)
        Returns quarter strings. For example: "1st Quarter", "2nd Quarter", etc.
        Parameters:
        context - The quarter context, FORMAT or STANDALONE.
        width - The width or the returned quarter string, WIDE, NARROW, or ABBREVIATED.
        Returns:
        the quarter strings.
      • setQuarters

        public void setQuarters​(java.lang.String[] newQuarters,
                                int context,
                                int width)
        Sets quarter strings. For example: "1st Quarter", "2nd Quarter", etc.
        Parameters:
        newQuarters - the new quarter strings.
        context - The formatting context, FORMAT or STANDALONE.
        width - The width of the quarter string, WIDE, NARROW, or ABBREVIATED.
      • getYearNames

        public java.lang.String[] getYearNames​(int context,
                                               int width)
        Returns cyclic year name strings if the calendar has them, for example: "jia-zi", "yi-chou", etc.
        Parameters:
        context - The usage context: FORMAT, STANDALONE.
        width - The requested name width: WIDE, ABBREVIATED, SHORT, NARROW.
        Returns:
        The year name strings, or null if they are not available for this calendar.
      • setYearNames

        public void setYearNames​(java.lang.String[] yearNames,
                                 int context,
                                 int width)
        Sets cyclic year name strings, for example: "jia-zi", "yi-chou", etc.
        Parameters:
        yearNames - The new cyclic year name strings.
        context - The usage context: FORMAT, STANDALONE (currently only FORMAT is supported).
        width - The name width: WIDE, ABBREVIATED, NARROW (currently only ABBREVIATED is supported).
      • getZodiacNames

        public java.lang.String[] getZodiacNames​(int context,
                                                 int width)
        Returns calendar zodiac name strings if the calendar has them, for example: "Rat", "Ox", "Tiger", etc.
        Parameters:
        context - The usage context: FORMAT, STANDALONE.
        width - The requested name width: WIDE, ABBREVIATED, SHORT, NARROW.
        Returns:
        The zodiac name strings, or null if they are not available for this calendar.
      • setZodiacNames

        public void setZodiacNames​(java.lang.String[] zodiacNames,
                                   int context,
                                   int width)
        Sets calendar zodiac name strings, for example: "Rat", "Ox", "Tiger", etc.
        Parameters:
        zodiacNames - The new zodiac name strings.
        context - The usage context: FORMAT, STANDALONE (currently only FORMAT is supported).
        width - The name width: WIDE, ABBREVIATED, NARROW (currently only ABBREVIATED is supported).
      • getLeapMonthPattern

        @Deprecated
        public java.lang.String getLeapMonthPattern​(int context,
                                                    int width)
        Deprecated.
        This API is ICU internal only.
        Returns the appropriate leapMonthPattern if the calendar has them, for example: "{0}bis"
        Parameters:
        context - The usage context: FORMAT, STANDALONE, NUMERIC.
        width - The requested pattern width: WIDE, ABBREVIATED, SHORT, NARROW.
        Returns:
        The leapMonthPattern, or null if not available for this calendar.
      • setLeapMonthPattern

        @Deprecated
        public void setLeapMonthPattern​(java.lang.String leapMonthPattern,
                                        int context,
                                        int width)
        Deprecated.
        This API is ICU internal only.
        Sets a leapMonthPattern, for example: "{0}bis"
        Parameters:
        leapMonthPattern - The new leapMonthPattern.
        context - The usage context: FORMAT, STANDALONE, NUMERIC.
        width - The name width: WIDE, ABBREVIATED, NARROW.
      • getAmPmStrings

        public java.lang.String[] getAmPmStrings()
        Returns am/pm strings. For example: "AM" and "PM".
        Returns:
        the weekday strings.
      • setAmPmStrings

        public void setAmPmStrings​(java.lang.String[] newAmpms)
        Sets am/pm strings. For example: "AM" and "PM".
        Parameters:
        newAmpms - the new ampm strings.
      • getTimeSeparatorString

        @Deprecated
        public java.lang.String getTimeSeparatorString()
        Deprecated.
        This API is ICU internal only.
        Returns the time separator string. For example: ":".
        Returns:
        the time separator string.
      • setTimeSeparatorString

        @Deprecated
        public void setTimeSeparatorString​(java.lang.String newTimeSeparator)
        Deprecated.
        This API is ICU internal only.
        Sets the time separator string. For example: ":".
        Parameters:
        newTimeSeparator - the new time separator string.
      • getZoneStrings

        public java.lang.String[][] getZoneStrings()
        Returns time zone strings.

        The array returned by this API is a two dimensional String array and each row contains at least following strings:

        • ZoneStrings[n][0] - System time zone ID
        • ZoneStrings[n][1] - Long standard time display name
        • ZoneStrings[n][2] - Short standard time display name
        • ZoneStrings[n][3] - Long daylight saving time display name
        • ZoneStrings[n][4] - Short daylight saving time display name
        When a localized display name is not available, the corresponding array element will be null.

        Note: ICU implements the time zone display name formatting algorithm specified by UTS#35 Unicode Locale Data Markup Language(LDML). The algorithm supports historic display name changes and various different types of names not available in DateFormatSymbols.getZoneStrings(). For accessing the full set of time zone string data used by ICU implementation, you should use TimeZoneNames APIs instead.

        Returns:
        the time zone strings.
      • setZoneStrings

        public void setZoneStrings​(java.lang.String[][] newZoneStrings)
        Sets time zone strings.

        Note: SimpleDateFormat no longer uses the zone strings stored in a DateFormatSymbols. Therefore, the time zone strings set by this method have no effects in an instance of SimpleDateFormat for formatting time zones. If you want to customize time zone display names formatted by SimpleDateFormat, you should customize TimeZoneFormat and set the instance by SimpleDateFormat.setTimeZoneFormat(TimeZoneFormat) instead.

        Parameters:
        newZoneStrings - the new time zone strings.
      • getLocalPatternChars

        public java.lang.String getLocalPatternChars()
        Returns localized date-time pattern characters. For example: 'u', 't', etc.

        Note: ICU no longer provides localized date-time pattern characters for a locale starting ICU 3.8. This method returns the non-localized date-time pattern characters unless user defined localized data is set by setLocalPatternChars.

        Returns:
        the localized date-time pattern characters.
      • setLocalPatternChars

        public void setLocalPatternChars​(java.lang.String newLocalPatternChars)
        Sets localized date-time pattern characters. For example: 'u', 't', etc.
        Parameters:
        newLocalPatternChars - the new localized date-time pattern characters.
      • clone

        public java.lang.Object clone()
        Overrides clone.
        Overrides:
        clone in class java.lang.Object
      • hashCode

        public int hashCode()
        Override hashCode. Generates a hash code for the DateFormatSymbols object.
        Overrides:
        hashCode in class java.lang.Object
      • equals

        public boolean equals​(java.lang.Object obj)
        Overrides equals.
        Overrides:
        equals in class java.lang.Object
      • initializeData

        protected void initializeData​(ULocale desiredLocale,
                                      java.lang.String type)
        Initializes format symbols for the locale and calendar type
        Parameters:
        desiredLocale - The locale whose symbols are desired.
        type - The calendar type whose date format symbols are desired.
      • initializeData

        void initializeData​(DateFormatSymbols dfs)
        Initializes format symbols using another instance. TODO Clean up initialization methods for subclasses
      • initializeData

        @Deprecated
        protected void initializeData​(ULocale desiredLocale,
                                      ICUResourceBundle b,
                                      java.lang.String calendarType)
        Deprecated.
        This API is ICU internal only.
        Initializes format symbols for the locale and calendar type
        Parameters:
        desiredLocale - The locale whose symbols are desired.
        b - Resource bundle provided externally
        calendarType - The calendar type being used
      • arrayOfArrayEquals

        private static final boolean arrayOfArrayEquals​(java.lang.Object[][] aa1,
                                                        java.lang.Object[][] aa2)
      • loadDayPeriodStrings

        private java.lang.String[] loadDayPeriodStrings​(java.util.Map<java.lang.String,​java.lang.String> resourceMap,
                                                        java.lang.String[] copyFrom)
        Loads localized names for day periods in the requested format.
        Parameters:
        resourceMap - Contains the dayPeriod resource to load
        copyFrom - If non-null, any values in the result that would otherwise be null are copied from this array
      • duplicate

        private final java.lang.String[] duplicate​(java.lang.String[] srcArray)
      • duplicate

        private final java.lang.String[][] duplicate​(java.lang.String[][] srcArray)
      • getDateFormatBundle

        @Deprecated
        public static java.util.ResourceBundle getDateFormatBundle​(java.lang.Class<? extends Calendar> calendarClass,
                                                                   java.util.Locale locale)
                                                            throws java.util.MissingResourceException
        Deprecated.
        ICU 4.0
        Finds the ResourceBundle containing the date format information for a specified calendar subclass in a given locale.

        The resource bundle name is based on the calendar's fully-specified class name, with ".resources" inserted at the end of the package name (just before the class name) and "Symbols" appended to the end. For example, the bundle corresponding to "com.ibm.icu.util.HebrewCalendar" is "com.ibm.icu.impl.data.HebrewCalendarSymbols".

        Note:Because of the structural changes in the ICU locale bundle, this API no longer works as described. This method always returns null.

        Throws:
        java.util.MissingResourceException
      • getDateFormatBundle

        @Deprecated
        public static java.util.ResourceBundle getDateFormatBundle​(java.lang.Class<? extends Calendar> calendarClass,
                                                                   ULocale locale)
                                                            throws java.util.MissingResourceException
        Deprecated.
        ICU 4.0
        Finds the ResourceBundle containing the date format information for a specified calendar subclass in a given locale.

        The resource bundle name is based on the calendar's fully-specified class name, with ".resources" inserted at the end of the package name (just before the class name) and "Symbols" appended to the end. For example, the bundle corresponding to "com.ibm.icu.util.HebrewCalendar" is "com.ibm.icu.impl.data.HebrewCalendarSymbols".

        Note:Because of the structural changes in the ICU locale bundle, this API no longer works as described. This method always returns null.

        Throws:
        java.util.MissingResourceException
      • getDateFormatBundle

        @Deprecated
        public static java.util.ResourceBundle getDateFormatBundle​(Calendar cal,
                                                                   java.util.Locale locale)
                                                            throws java.util.MissingResourceException
        Deprecated.
        ICU 4.0
        Variant of getDateFormatBundle(java.lang.Class, java.util.Locale) that takes a Calendar instance instead of a Calendar class.

        Note:Because of the structural changes in the ICU locale bundle, this API no longer works as described. This method always returns null.

        Throws:
        java.util.MissingResourceException
        See Also:
        getDateFormatBundle(java.lang.Class, java.util.Locale)
      • getDateFormatBundle

        @Deprecated
        public static java.util.ResourceBundle getDateFormatBundle​(Calendar cal,
                                                                   ULocale locale)
                                                            throws java.util.MissingResourceException
        Deprecated.
        ICU 4.0
        Variant of getDateFormatBundle(java.lang.Class, java.util.Locale) that takes a Calendar instance instead of a Calendar class.

        Note:Because of the structural changes in the ICU locale bundle, this API no longer works as described. This method always returns null.

        Throws:
        java.util.MissingResourceException
        See Also:
        getDateFormatBundle(java.lang.Class, java.util.Locale)
      • getLocale

        public final ULocale getLocale​(ULocale.Type type)
        Returns the locale that was used to create this object, or null. This may may differ from the locale requested at the time of this object's creation. For example, if an object is created for locale en_US_CALIFORNIA, the actual data may be drawn from en (the actual locale), and en_US may be the most specific locale that exists (the valid locale).

        Note: This method will be implemented in ICU 3.0; ICU 2.8 contains a partial preview implementation. The actual locale is returned correctly, but the valid locale is not, in most cases.

        Parameters:
        type - type of information requested, either ULocale.VALID_LOCALE or ULocale.ACTUAL_LOCALE.
        Returns:
        the information specified by type, or null if this object was not constructed from locale data.
        See Also:
        ULocale, ULocale.VALID_LOCALE, ULocale.ACTUAL_LOCALE
      • setLocale

        final void setLocale​(ULocale valid,
                             ULocale actual)
        Sets information about the locales that were used to create this object. If the object was not constructed from locale data, both arguments should be set to null. Otherwise, neither should be null. The actual locale must be at the same level or less specific than the valid locale. This method is intended for use by factories or other entities that create objects of this class.
        Parameters:
        valid - the most specific locale containing any resource data, or null
        actual - the locale containing data used to construct this object, or null
        See Also:
        ULocale, ULocale.VALID_LOCALE, ULocale.ACTUAL_LOCALE
      • readObject

        private void readObject​(java.io.ObjectInputStream stream)
                         throws java.io.IOException,
                                java.lang.ClassNotFoundException
        3.8 or older version did not have localized GMT format patterns.
        Throws:
        java.io.IOException
        java.lang.ClassNotFoundException