- java.lang.Object
-
- java.text.DateFormatSymbols
-
- 实现的所有接口
-
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)).
如果区域设置包含“rg”(区域覆盖) Unicode extension ,则会覆盖指定区域的符号。
DateFormatSymbols
对象是可复制的。 获取DateFormatSymbols
对象时,可以随意修改日期时格式化数据。 例如,您可以将本地化的日期时间格式模式字符替换为您容易记住的字符。 或者您可以将代表性城市更改为您喜欢的城市。可以添加新的
DateFormatSymbols
子类以支持SimpleDateFormat
以获取其他语言环境的日期时间格式。- 从以下版本开始:
- 1.1
- 另请参见:
-
DateFormat
,SimpleDateFormat
,SimpleTimeZone
, Serialized Form
-
-
构造方法摘要
构造方法 构造器 描述 DateFormatSymbols()
通过从默认FORMAT
语言环境的资源加载格式数据来构造DateFormatSymbols对象。DateFormatSymbols(Locale locale)
通过从给定语言环境的资源加载格式数据来构造DateFormatSymbols对象。
-
方法摘要
所有方法 静态方法 实例方法 具体的方法 变量和类型 方法 描述 Object
clone()
覆盖Cloneableboolean
equals(Object obj)
覆盖等于String[]
getAmPmStrings()
获取ampm字符串。static Locale[]
getAvailableLocales()
返回所有语言环境的数组,getInstance
方法可以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.US
的Locale
实例。- 结果
-
可为其提供本地化
DateFormatSymbols
实例的语言环境数组。 - 从以下版本开始:
- 1.6
-
getInstance
public static final DateFormatSymbols getInstance()
获取默认语言环境的DateFormatSymbols
实例。 此方法为Java运行时本身支持的语言环境以及已安装的DateFormatSymbolsProvider
实现支持的语言环境提供对DateFormatSymbols
实例的访问。这相当于致电
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运行时本身支持的语言环境以及已安装的DateFormatSymbolsProvider
实现支持的语言环境提供对DateFormatSymbols
实例的访问。- 参数
-
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()
获取月份字符串。 例如:“January”,“February”等。将返回具有12或13个元素的数组,具体取决于是否支持Calendar.UNDECIMBER
。 使用Calendar.JANUARY
,Calendar.FEBRUARY
等,以索引的结果阵列。如果语言需要不同的格式和独立用法表单,此方法将返回格式化表单中的月份名称。 例如,在捷克语言一月的首选月份名称是在格式化形式ledna,而它在单机形式LEDEN。 在这种情况下,此方法返回
"ledna"
。 有关更多详细信息,请参阅Calendar Elements in the Unicode Locale Data Markup Language (LDML) specification 。- 实现要求:
-
此方法返回13个元素,因为支持
Calendar.UNDECIMBER
。 - 结果
- 月份字符串。
-
setMonths
public void setMonths(String[] newMonths)
设置月份字符串。 例如:“一月”,“二月”等。- 参数
-
newMonths
- 新的月份字符串。 阵列应被索引Calendar.JANUARY
,Calendar.FEBRUARY
等
-
getShortMonths
public String[] getShortMonths()
获取短月份字符串。 例如:“Jan”,“Feb”等。将返回具有12或13个元素的数组,具体取决于是否支持Calendar.UNDECIMBER
。 使用Calendar.JANUARY
,Calendar.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.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()
获取简短的工作日字符串。 例如:“Sun”,“Mon”等。- 结果
-
工作日短的字符串。
使用
Calendar.SUNDAY
,Calendar.MONDAY
等,以索引的结果阵列。
-
setShortWeekdays
public void setShortWeekdays(String[] newShortWeekdays)
设置简短的工作日字符串。 例如:“Sun”,“Mon”等。- 参数
-
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)
设置时区字符串。 参数必须是大小为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 。 所有其他条目都是本地化名称。- 参数
-
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
-
-