java.lang.Object java.text.DateFormatSymbols
public class DateFormatSymbols
DateFormatSymbols
是一个公共类,用于封装可本地化的日期-时间格式化数据,如月名、星期几的名称和时区数据。DateFormat
和 SimpleDateFormat
都使用 DateFormatSymbols
封装此信息。
通常不应直接使用 DateFormatSymbols
。建议最好使用 DateFormat
类的工厂方法创建日期-时间格式器 (formatter):getTimeInstance
、getDateInstance
或 getDateTimeInstance
。这些方法自动为格式器创建一个 DateFormatSymbols
,所以用户就不必再创建了。创建了格式器后,可使用 setPattern
方法修改它的格式模式。有关使用 DateFormat
的工厂方法创建格式器的更多信息,请参阅 DateFormat
。
如果要为特定语言环境创建具有特定格式模式的日期-时间格式器,可使用以下语句实现:
new SimpleDateFormat(aPattern, DateFormatSymbols.getInstance(aLocale)).
DateFormatSymbols
对象是可复制的。获得一个 DateFormatSymbols
对象后,可随意修改日期-时间格式化数据。例如,可以使用便于记忆的字符替换本地化的日期-时间格式模式字符。也可以将有代表性的城市更改为最喜欢的城市。
要为其他语言环境进行日期-时间格式化,可添加新的 DateFormatSymbols
子类以支持 SimpleDateFormat
。
DateFormat
,
SimpleDateFormat
,
SimpleTimeZone
,
序列化表格
构造方法摘要 | |
---|---|
DateFormatSymbols() 通过从默认语言环境资源加载格式数据,构造一个 DateFormatSymbols 对象。 |
|
DateFormatSymbols(Locale locale) 通过从给定语言环境资源加载格式数据,构造一个 DateFormatSymbols 对象。 |
方法摘要 | |
---|---|
Object |
clone() 重写 Cloneable。 |
boolean |
equals(Object obj) 重写 equals。 |
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) 设置时区字符串。 |
从类 java.lang.Object 继承的方法 |
---|
finalize, getClass, notify, notifyAll, toString, wait, wait, wait |
构造方法详细信息 |
---|
public DateFormatSymbols()
DateFormatSymbolsProvider
实现所支持的语言环境实例。要覆盖所有的语言环境,可使用
getInstance
方法。
MissingResourceException
- 如果无法找到或加载默认语言环境的资源。
getInstance()
public DateFormatSymbols(Locale locale)
DateFormatSymbolsProvider
实现所支持的语言环境实例。要覆盖所有的语言环境,可使用
getInstance
方法。
MissingResourceException
- 如果无法找到或加载指定语言环境的资源。
getInstance(Locale)
方法详细信息 |
---|
public static Locale[] getAvailableLocales()
getInstance
方法可为之返回本地化实例的所有语言环境组成。返回的数组表示 Java 运行时所支持的语言环境和已安装的
DateFormatSymbolsProvider
实现所支持的语言环境的并集。 它至少必须包含一个等于
Locale.US
的
Locale
实例。
DateFormatSymbols
实例。
public static final DateFormatSymbols getInstance()
DateFormatSymbols
实例。此方法可访问 Java 运行时本身以及已安装
DateFormatSymbolsProvider
实现所支持的语言环境的
DateFormatSymbols
实例。
DateFormatSymbols
实例。
public static final DateFormatSymbols getInstance(Locale locale)
DateFormatSymbols
实例。此方法可访问 Java 运行时本身以及已安装
DateFormatSymbolsProvider
实现所支持的语言环境的
DateFormatSymbols
实例。
给定的语言环境
-
DateFormatSymbols
实例。
如果
-
locale
为 null
public String[] getEras()
public void setEras(String[] newEras)
newEras
- 新的年代字符串。
public String[] getMonths()
public void setMonths(String[] newMonths)
newMonths
- 新的月份字符串。
public String[] getShortMonths()
public void setShortMonths(String[] newShortMonths)
newShortMonths
- 新的简写形式的月份字符串。
public String[] getWeekdays()
Calendar.SUNDAY
、
Calendar.MONDAY
等指出所得数组。
public void setWeekdays(String[] newWeekdays)
newWeekdays
- 新的星期字符串。应该通过
Calendar.SUNDAY
、
Calendar.MONDAY
等指出该数组。
public String[] getShortWeekdays()
Calendar.SUNDAY
、
Calendar.MONDAY
等指出所得数组。
public void setShortWeekdays(String[] newShortWeekdays)
newShortWeekdays
- 新的简短形式星期字符串。应该通过
Calendar.SUNDAY
、
Calendar.MONDAY
等指出该数组。
public String[] getAmPmStrings()
public void setAmPmStrings(String[] newAmpms)
newAmpms
- 新的 ampm 字符串。
public String[][] getZoneStrings()
TimeZone.getDisplayName()
替代。
返回值是一个二维字符串数字,其大小为 n × m,其中 m 至少为 5。每个 n 行都是一个包含单个 TimeZone
本地化名称的条目。每个这样的行包含(i
的范围从 0 到 n-1):
zoneStrings[i][0]
- 时区 IDzoneStrings[i][1]
- 标准时时区的长名称zoneStrings[i][2]
- 标准时时区的短名称zoneStrings[i][3]
- 夏令时时区的长名称zoneStrings[i][4]
- 夏令时时区的短名称TimeZone
类的有效 ID 之一,但不是
自定义 ID。其他所有条目都是本地化名称。如果某个时区没有实现夏令时,则不能使用夏令时名称。
如果没有在此 DateFormatSymbols
实例上调用 setZoneStrings
,则返回该调用提供的字符串。否则,返回的数组包含 Java 运行时和已安装的 TimeZoneNameProvider
实现所提供的名称。
setZoneStrings(String[][])
public void setZoneStrings(String[][] newZoneStrings)
TimeZone
本地化名称的条目。每个这样的行包含(
i
的范围从 0 到
n-1):
zoneStrings[i][0]
- 时区 IDzoneStrings[i][1]
- 标准时时区的长名称zoneStrings[i][2]
- 标准时时区的短名称zoneStrings[i][3]
- 夏令时时区的长名称zoneStrings[i][4]
- 夏令时时区的短名称TimeZone
类的有效 ID 之一,但不是
自定义 ID。其他所有条目都是本地化名称。
newZoneStrings
- 新的时区字符串。
IllegalArgumentException
- 如果
newZoneStrings
中任何行的长度小于 5
NullPointerException
- 如果
newZoneStrings
为 null
getZoneStrings()
public String getLocalPatternChars()
public void setLocalPatternChars(String newLocalPatternChars)
newLocalPatternChars
- 新的本地化的日期-时间模式字符。
public Object clone()
public int hashCode()
Object.equals(java.lang.Object)
,
Hashtable
public boolean equals(Object obj)
obj
- 要与之比较的引用对象。
true
;否则返回
false
。
Object.hashCode()
,
Hashtable