- java.lang.Object
-
- java.text.DateFormatSymbols
-
- All Implemented Interfaces:
-
Serializable
,Cloneable
public class DateFormatSymbols extends Object implements Serializable, Cloneable
DateFormatSymbols
是用于封装可本地化的日期时间格式化数据的公共类,例如月份的名称,星期几的名称和时区数据。SimpleDateFormat
使用DateFormatSymbols
封装此信息。通常你不应该直接使用
DateFormatSymbols
。 相反,我们鼓励你创建一个日期-时间格式化DateFormat
类的工厂方法:getTimeInstance
,getDateInstance
,或getDateTimeInstance
。 这些方法会自动为格式化程序创建一个DateFormatSymbols
,以便您不必。 格式化程序创建后,您可以使用setPattern
方法修改其格式模式。 有关使用DateFormat
的工厂方法创建格式化程序的更多信息,请参阅DateFormat
。如果您决定为特定区域设置创建具有特定格式模式的日期时间格式化程序,则可以使用以下命令:
new SimpleDateFormat(aPattern, DateFormatSymbols.getInstance(aLocale)).
DateFormatSymbols
对象是可DateFormatSymbols
。 当您获得DateFormatSymbols
对象时,请随时修改日期时间格式化数据。 例如,您可以将本地化的日期时间格式模式字符替换为您感到容易记住的字符。 或者您可以将代表城市更改为您最喜爱的城市。可以添加新的
DateFormatSymbols
子类以支持SimpleDateFormat
用于其他语言环境的日期时间格式。- 从以下版本开始:
- 1.1
- 另请参见:
-
DateFormat
,SimpleDateFormat
,SimpleTimeZone
, Serialized Form
-
-
构造方法摘要
构造方法 Constructor 描述 DateFormatSymbols()
通过从默认的FORMAT
区域设置的资源中加载格式数据构造一个DateFormatSymbols对象。DateFormatSymbols(Locale locale)
通过从给定语言环境的资源加载格式数据构造DateFormatSymbols对象。
-
方法摘要
所有方法 静态方法 接口方法 具体的方法 Modifier and Type 方法 描述 Object
clone()
覆盖可克隆boolean
equals(Object obj)
覆盖等于String[]
getAmPmStrings()
获取ampm字符串。static Locale[]
getAvailableLocales()
返回一个所有语言环境的数组,为此类可以返回本地化实例的getInstance
方法。String[]
getEras()
获取时代字符串。static DateFormatSymbols
getInstance()
获取默认语言环境的DateFormatSymbols
实例。static DateFormatSymbols
getInstance(Locale locale)
获取指定区域设置的DateFormatSymbols
实例。String
getLocalPatternChars()
获取本地化的日期时间模式字符。String[]
getMonths()
获取月份字符串。String[]
getShortMonths()
获得短的月份字符串。String[]
getShortWeekdays()
获得短周日字符串。String[]
getWeekdays()
获得平日字符串。String[][]
getZoneStrings()
获取时区字符串。int
hashCode()
覆盖hashCode。void
setAmPmStrings(String[] newAmpms)
设置ampm字符串。void
setEras(String[] newEras)
设置时代字符串。void
setLocalPatternChars(String newLocalPatternChars)
设置本地化的日期时间模式字符。void
setMonths(String[] newMonths)
设置月份字符串。void
setShortMonths(String[] newShortMonths)
设置短的月份字符串。void
setShortWeekdays(String[] newShortWeekdays)
设置短周日字符串。void
setWeekdays(String[] newWeekdays)
设置工作日字符串void
setZoneStrings(String[][] newZoneStrings)
设置时区字符串。
-
-
-
构造方法详细信息
-
DateFormatSymbols
public DateFormatSymbols()
通过从默认的FORMAT
区域设置的资源中加载格式数据构造一个DateFormatSymbols对象。 此构造函数只能为Java运行时环境支持的语言环境构建实例,而不是由已安装的DateFormatSymbolsProvider
实现支持的语言环境。 对于完整的区域覆盖,请使用getInstance
方法。这相当于调用
DateFormatSymbols(Locale.getDefault(Locale.Category.FORMAT))
。- 异常
-
MissingResourceException
- 如果无法找到或无法加载默认语言环境的资源。 - 另请参见:
-
getInstance()
,Locale.getDefault(java.util.Locale.Category)
,Locale.Category.FORMAT
-
DateFormatSymbols
public DateFormatSymbols(Locale locale)
通过从给定语言环境的资源加载格式数据构造DateFormatSymbols对象。 此构造函数只能为Java运行时环境支持的语言环境构建实例,而不是由已安装的DateFormatSymbolsProvider
实现支持的语言环境。 对于完整的区域覆盖,请使用getInstance
方法。- 参数
-
locale
- 所需的语言环境 - 异常
-
MissingResourceException
- 如果指定的区域设置的资源无法找到或无法加载。 - 另请参见:
-
getInstance(Locale)
-
-
方法详细信息
-
getAvailableLocales
public static Locale[] getAvailableLocales()
返回一个所有语言环境的数组,该类的getInstance
方法可以返回本地化实例。 返回的数组表示由Java运行时支持的语言环境和已安装的DateFormatSymbolsProvider
实现的联合。 它必须至少包含Locale
实例等于Locale.US
。- 结果
-
语言环境的数组,它局部
DateFormatSymbols
实例可用。 - 从以下版本开始:
- 1.6
-
getInstance
public static final DateFormatSymbols getInstance()
获取默认语言环境的DateFormatSymbols
实例。 此方法可访问由Java运行时本身支持的区域设置的DateFormatSymbols
实例以及已安装的DateFormatSymbolsProvider
实现所支持的实例 。这相当于调用
getInstance(Locale.getDefault(Locale.Category.FORMAT))
。- 结果
-
一个
DateFormatSymbols
实例。 - 从以下版本开始:
- 1.6
- 另请参见:
-
Locale.getDefault(java.util.Locale.Category)
,Locale.Category.FORMAT
-
getInstance
public static final DateFormatSymbols getInstance(Locale locale)
获取指定区域设置的DateFormatSymbols
实例。 此方法可访问由Java运行时本身支持的语言环境的DateFormatSymbols
实例以及已安装的DateFormatSymbolsProvider
实现所支持的实例 。- 参数
-
locale
- 给定的区域设置。 - 结果
-
一个
DateFormatSymbols
例子。 - 异常
-
NullPointerException
- 如果locale
为空 - 从以下版本开始:
- 1.6
-
getEras
public String[] getEras()
获取时代字符串。 例如:“AD”和“BC”。- 结果
- 时代弦。
-
setEras
public void setEras(String[] newEras)
设置时代字符串。 例如:“AD”和“BC”。- 参数
-
newEras
- 新时代的弦。
-
getMonths
public String[] getMonths()
获取月份字符串。 例如:“1月”,“2月”等如果语言需要格式化和独立使用的不同格式,则此方法将以格式化形式返回月份名称。 例如,在捷克语言一月的首选月份名称是在格式化形式ledna,而它在单机形式LEDEN。 这种方法返回
"ledna"
。 有关详细信息,请参阅Calendar Elements in the Unicode Locale Data Markup Language (LDML) specification 。- 结果
-
月份字符串。
使用
Calendar.JANUARY
,Calendar.FEBRUARY
等,以索引的结果阵列。
-
setMonths
public void setMonths(String[] newMonths)
设置月份字符串。 例如:“1月”,“2月”等- 参数
-
newMonths
- 新的月份字符串。 阵列应被索引Calendar.JANUARY
,Calendar.FEBRUARY
等
-
getShortMonths
public String[] getShortMonths()
获得短的月份字符串。 例如:“Jan”,“Feb”等如果语言需要格式化和独立用法的不同格式,则此方法将以格式化形式返回较短的月份名称。 例如,加泰罗尼亚语中1月份的首选缩写是de gen。 在格式化形式,而它是gen。 在独立的形式。 在这种情况下,此方法返回
"de gen."
。 有关详细信息,请参阅Calendar Elements in the Unicode Locale Data Markup Language (LDML) specification 。- 结果
-
短的月份字符串。
使用
Calendar.JANUARY
,Calendar.FEBRUARY
等,以索引的结果阵列。
-
setShortMonths
public void setShortMonths(String[] newShortMonths)
设置短的月份字符串。 例如:“Jan”,“Feb”等- 参数
-
newShortMonths
- 新的短的月份字符串。 阵列应被索引Calendar.JANUARY
,Calendar.FEBRUARY
等
-
getWeekdays
public String[] getWeekdays()
获得平日字符串。 例如:“星期日”,“星期一”等- 结果
-
工作日的字符串。
使用
Calendar.SUNDAY
,Calendar.MONDAY
等,以索引的结果阵列。
-
setWeekdays
public void setWeekdays(String[] newWeekdays)
设置工作日字符串 例如:“星期日”,“星期一”等- 参数
-
newWeekdays
- 新的工作日字符串。 阵列应被索引Calendar.SUNDAY
,Calendar.MONDAY
等
-
getShortWeekdays
public String[] getShortWeekdays()
获得短周日字符串。 例如:“太阳”,“星期一”等- 结果
-
短周日字符串。
使用
Calendar.SUNDAY
,Calendar.MONDAY
等,以索引的结果阵列。
-
setShortWeekdays
public void setShortWeekdays(String[] newShortWeekdays)
设置短周日字符串。 例如:“太阳”,“星期一”等- 参数
-
newShortWeekdays
- 新的短周日字符串。 阵列应被索引Calendar.SUNDAY
,Calendar.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()
。返回的值是大小为n的m的二维数组,其中m为至少5.每行n是包含单个
TimeZone
的本地化名称的条目。 每行包含(i
范围从0 .. n -1):-
zoneStrings[i][0]
- 时区ID -
zoneStrings[i][1]
- 标准时间的长名称 -
zoneStrings[i][2]
- 标准时间区域的短名称 -
zoneStrings[i][3]
- 夏令时区域的长名称 -
zoneStrings[i][4]
- 夏令时区域的简称
TimeZone
类的有效ID,不是custom IDs 。 所有其他条目都是本地化名称。 如果某个区域未实现夏令时,则不应使用夏令时名称。如果
setZoneStrings
一直呼吁这个DateFormatSymbols
实例,然后通过调用提供的字符串返回。 否则,返回的数组包含由Java运行时提供的名称和安装的TimeZoneNameProvider
实现。- 结果
- 时区字符串。
- 另请参见:
-
setZoneStrings(String[][])
-
-
setZoneStrings
public void setZoneStrings(String[][] newZoneStrings)
设置时区字符串。 该参数必须是m,其中m是至少为5。每个n行的是包含本地化的名称为单一的条目大小为n的串的二维阵列TimeZone
。 每行包含(i
范围从0 .. n -1):-
zoneStrings[i][0]
- 时区ID -
zoneStrings[i][1]
- 标准时间的长名称 -
zoneStrings[i][2]
- 标准时间的短名称 -
zoneStrings[i][3]
- 夏令时区域的长名称 -
zoneStrings[i][4]
- 夏令时区域的短名称
TimeZone
类的有效ID,不是custom IDs 。 所有其他条目都是本地化名称。- 参数
-
newZoneStrings
- 新的时区字符串。 - 异常
-
IllegalArgumentException
-如果在任何行的长度newZoneStrings
小于5 -
NullPointerException
- 如果newZoneStrings
为空 - 另请参见:
-
getZoneStrings()
-
-
getLocalPatternChars
public String getLocalPatternChars()
获取本地化的日期时间模式字符。 例如:'你','t'等- 结果
- 本地化的日期时间模式字符。
-
setLocalPatternChars
public void setLocalPatternChars(String newLocalPatternChars)
设置本地化的日期时间模式字符。 例如:'你','t'等- 参数
-
newLocalPatternChars
- 新的本地化日期时间模式字符。
-
hashCode
public int hashCode()
覆盖hashCode。 为DateFormatSymbols对象生成哈希码。- 重写:
-
hashCode
在Object
- 结果
- 该对象的哈希码值。
- 另请参见:
-
Object.equals(java.lang.Object)
,System.identityHashCode(java.lang.Object)
-
equals
public boolean equals(Object obj)
覆盖等于- 重写:
-
equals
在Object
- 参数
-
obj
- 与之比较的参考对象。 - 结果
-
true
如果该对象与obj参数相同; 否则为false
。 - 另请参见:
-
Object.hashCode()
,HashMap
-
-