模块  java.base
软件包  java.text

Class DateFormatSymbols

  • 实现的所有接口
    SerializableCloneable

    public class DateFormatSymbols
    extends Object
    implements Serializable, Cloneable
    DateFormatSymbols是用于封装可本地化的日期时间格式数据的公共类,例如月份名称,星期几的名称和时区数据。 SimpleDateFormat使用DateFormatSymbols来封装此信息。

    通常,您不应直接使用DateFormatSymbols 相反,我们鼓励你创建一个日期-时间格式化DateFormat类的工厂方法: getTimeInstancegetDateInstance ,或getDateTimeInstance 这些方法会自动为格式化程序创建一个DateFormatSymbols ,这样您就不必这样做了。 创建格式化程序后,您可以使用setPattern方法修改其格式模式。 有关使用DateFormat的工厂方法创建格式化程序的更多信息,请参阅DateFormat

    如果您决定使用特定区域设置的特定格式模式创建日期时格式化程序,则可以使用以下命令:

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

    如果区域设置包含“rg”(区域覆盖) Unicode extension ,则会覆盖指定区域的符号。

    DateFormatSymbols对象是可复制的。 获取DateFormatSymbols对象时,可以随意修改日期时格式化数据。 例如,您可以将本地化的日期时间格式模式字符替换为您容易记住的字符。 或者您可以将代表性城市更改为您喜欢的城市。

    可以添加新的DateFormatSymbols子类以支持SimpleDateFormat以获取其他语言环境的日期时间格式。

    从以下版本开始:
    1.1
    另请参见:
    DateFormatSimpleDateFormatSimpleTimeZoneSerialized Form
    • 方法详细信息

      • getAvailableLocales

        public static Locale[] getAvailableLocales()
        返回getInstance方法可以返回本地化实例的所有语言环境的数组。 返回的数组表示Java运行时和已安装的DateFormatSymbolsProvider实现支持的语言环境的并 它必须至少包含一个等于Locale.USLocale实例。
        结果
        可为其提供本地化 DateFormatSymbols实例的语言环境数组。
        从以下版本开始:
        1.6
      • getInstance

        public static final DateFormatSymbols getInstance​(Locale locale)
        获取指定语言环境的DateFormatSymbols实例。 此方法为Java运行时本身支持的语言环境以及已安装的DateFormatSymbolsProvider实现支持的语言环境提供对DateFormatSymbols实例的访问。
        参数
        locale - 给定的语言环境。
        结果
        一个 DateFormatSymbols实例。
        异常
        NullPointerException - 如果 locale为空
        从以下版本开始:
        1.6
      • getEras

        public String[] getEras()
        获取时代字符串。 例如:“AD”和“BC”。
        结果
        时代的弦乐。
      • setEras

        public void setEras​(String[] newEras)
        设置时代字符串。 例如:“AD”和“BC”。
        参数
        newEras - 新时代的字符串。
      • setMonths

        public void setMonths​(String[] newMonths)
        设置月份字符串。 例如:“一月”,“二月”等。
        参数
        newMonths - 新的月份字符串。 阵列应被索引Calendar.JANUARYCalendar.FEBRUARY
      • getShortMonths

        public String[] getShortMonths()
        获取短月份字符串。 例如:“Jan”,“Feb”等。将返回具有12或13个元素的数组,具体取决于是否支持Calendar.UNDECIMBER 使用Calendar.JANUARYCalendar.FEBRUARY等,以索引的结果阵列。

        如果语言需要不同的格式和独立用法形式,则此方法将在格式化表单中返回短月份名称。 例如,加泰罗尼亚语中1月的首选缩写是de gen。 在格式化表单中,虽然它是gen。 在独立的形式。 在这种情况下,此方法返回"de gen." 有关更多详细信息,请参阅Calendar Elements in the Unicode Locale Data Markup Language (LDML) specification

        实现要求:
        此方法返回13个元素,因为支持 Calendar.UNDECIMBER
        结果
        短月的字符串。
      • setShortMonths

        public void setShortMonths​(String[] newShortMonths)
        设置短月份字符串。 例如:“Jan”,“Feb”等。
        参数
        newShortMonths - 新的短月字符串。 阵列应被索引Calendar.JANUARYCalendar.FEBRUARY
      • getWeekdays

        public String[] getWeekdays()
        获取工作日字符串。 例如:“星期日”,“星期一”等。
        结果
        工作日的字符串。 使用Calendar.SUNDAYCalendar.MONDAY等,以索引的结果阵列。
      • setWeekdays

        public void setWeekdays​(String[] newWeekdays)
        设置工作日字符串。 例如:“星期日”,“星期一”等。
        参数
        newWeekdays - 新的工作日字符串。 阵列应被索引Calendar.SUNDAYCalendar.MONDAY
      • getShortWeekdays

        public String[] getShortWeekdays()
        获取简短的工作日字符串。 例如:“Sun”,“Mon”等。
        结果
        工作日短的字符串。 使用Calendar.SUNDAYCalendar.MONDAY等,以索引的结果阵列。
      • setShortWeekdays

        public void setShortWeekdays​(String[] newShortWeekdays)
        设置简短的工作日字符串。 例如:“Sun”,“Mon”等。
        参数
        newShortWeekdays - 新的短工作日字符串。 阵列应被索引Calendar.SUNDAYCalendar.MONDAY
      • getAmPmStrings

        public String[] getAmPmStrings()
        获取ampm字符串。 例如:“AM”和“PM”。
        结果
        ampm字符串。
      • setAmPmStrings

        public void setAmPmStrings​(String[] newAmpms)
        设置ampm字符串。 例如:“AM”和“PM”。
        参数
        newAmpms - 新的ampm字符串。
      • getZoneStrings

        public String[][] getZoneStrings()
        获取时区字符串。 不鼓励使用这种方法; 请改用TimeZone.getDisplayName()

        返回的值是一个大小为nm的字符串的二维数组,其中m至少为5. n行中的每一行都是包含单个TimeZone的本地化名称的条目。 每个这样的行包含( i范围从0 .. n -1):

        • zoneStrings[i][0] - 时区ID
        • zoneStrings[i][1] - 标准时间内的区域长名称
        • zoneStrings[i][2] - 标准时间内的区域短名称
        • zoneStrings[i][3] - 夏令时区域的长名称
        • zoneStrings[i][4] - 夏令时区域的简称
        区域ID 本地化; 它是TimeZone类的有效ID之一,而不是custom IDs 所有其他条目都是本地化名称。 如果区域未实现夏令时,则不应使用夏令时名称。

        如果setZoneStrings一直呼吁这个DateFormatSymbols实例,然后通过调用提供的字符串返回。 否则,返回的数组包含Java运行时和已安装的TimeZoneNameProvider实现提供的名称。

        结果
        时区字符串。
        另请参见:
        setZoneStrings(String[][])
      • setZoneStrings

        public void setZoneStrings​(String[][] newZoneStrings)
        设置时区字符串。 参数必须是大小为nm的二维字符串数组,其中m至少为5. n行中的每一行都是包含单个TimeZone的本地化名称的条目。 每个这样的行包含( i范围从0 .. n -1):
        • zoneStrings[i][0] - 时区ID
        • zoneStrings[i][1] - 标准时间内区域的长名称
        • zoneStrings[i][2] - 标准时间内的区域短名称
        • zoneStrings[i][3] - 夏令时区域的长名称
        • zoneStrings[i][4] - 夏令时区域的简称
        区域ID 本地化; 它是TimeZone类的有效ID之一,而不是custom IDs 所有其他条目都是本地化名称。
        参数
        newZoneStrings - 新的时区字符串。
        异常
        IllegalArgumentException -如果在任何行的长度 newZoneStrings小于5
        NullPointerException - 如果 newZoneStrings为空
        另请参见:
        getZoneStrings()
      • getLocalPatternChars

        public String getLocalPatternChars()
        获取本地化的日期时间模式字符。 例如:'你','t'等。
        结果
        本地化的日期 - 时间模式字符。
      • setLocalPatternChars

        public void setLocalPatternChars​(String newLocalPatternChars)
        设置本地化的日期 - 时间模式字符。 例如:'你','t'等。
        参数
        newLocalPatternChars - 新的本地化日期时间模式字符。
      • clone

        public Object clone()
        覆盖Cloneable
        重写:
        clone在课程 Object
        结果
        这个实例的克隆。
        另请参见:
        Cloneable
      • equals

        public boolean equals​(Object obj)
        覆盖等于
        重写:
        equals在课程 Object
        参数
        obj - 要与之比较的引用对象。
        结果
        true如果此对象与obj参数相同; 否则为false
        另请参见:
        Object.hashCode()HashMap