包 | flash.globalization |
类 | public final class DateTimeFormatter |
继承 | DateTimeFormatter Object |
语言版本: | ActionScript 3.0 |
运行时版本: | Flash Player 10.1, AIR 2 |
有两种选择日期时间格式的方法:使用预定义模式或自定模式。对于大多数应用程序,应该使用由 DateTimeStyle 常量 (LONG
、MEDIUM
、NONE
或 SHORT
指定的预定义样式。这些常量指定请求的区域设置的默认模式或指定基于用户操作系统设置的默认模式。
例如,以下代码使用默认短日期格式创建日期字符串:
var df:DateTimeFormatter = new DateTimeFormatter(LocaleID.DEFAULT, DateTimeStyle.SHORT, DateTimeStyle.NONE); var currentDate:Date = new Date(); var shortDate:String = df.format(currentDate);
创建此类的实例后,如果操作系统支持请求的区域设置,则根据请求的区域设置的约定和默认值以及构造函数的 dateStyle
和 timeStyle
参数设置该实例的属性。如果请求的区域设置不可用,则根据回退或默认系统区域设置来设置属性,可以使用 actualLocaleIDName
属性检索默认系统区域设置。
此类包含其他方法,用于获得月名称和工作日名称的本地化字符串,以及检索可在日历选取器或其他类似应用程序中使用的每周第一天。
由于使用用户的设置、使用操作系统提供的格式设置模式,并在请求的区域设置不受支持时使用回退区域设置,因此,即便使用相同的区域设置 ID,对不同的用户显示的格式设置结果也可能不同。
相关 API 元素
属性 | 由以下参数定义 | ||
---|---|---|---|
actualLocaleIDName : String [只读]
此 DateTimeFormatter 对象使用的实际区域设置 ID 的名称。 | DateTimeFormatter | ||
constructor : Object
对类对象或给定对象实例的构造函数的引用。 | Object | ||
lastOperationStatus : String [只读]
此 DateTimeFormatter 对象执行的前一操作的状态。 | DateTimeFormatter | ||
requestedLocaleIDName : String [只读]
传递到此 DateTimeFormatter 对象的构造函数的请求区域设置 ID 的名称。 | DateTimeFormatter |
方法 | 由以下参数定义 | ||
---|---|---|---|
DateTimeFormatter(requestedLocaleIDName:String, dateStyle:String = "long", timeStyle:String = "long")
构造新 DateTimeFormatter 对象,以根据指定区域设置的约定以及提供的日期和时间格式设置样式来设置日期和时间的格式。 | DateTimeFormatter | ||
设置解释为以用户本地时间表示(使用 Date 对象的本地时间组件,如 date、day、fullYear、hours、minutes、month 和 seconds)的 Date 对象的显示字符串的格式。 | DateTimeFormatter | ||
根据 dateStyle、timeStyle 或日期时间模式,设置解释为以 UTC 时间表示(使用 Date 对象的 UTC 组成组件,如 dateUTC、dayUTC、fullYearUTC、hoursUTC、minutesUTC、monthUTC 和 secondsUTC)的 Date 对象的显示字符串的格式。 | DateTimeFormatter | ||
[静态]
列出此类支持的所有区域设置 ID 名称。 | DateTimeFormatter | ||
获取此实例 DateTimeFormatter 的日期样式。 | DateTimeFormatter | ||
返回此 DateTimeFormatter 对象设置日期和时间格式所用的模式字符串。 | DateTimeFormatter | ||
返回一个整数,它对应于此区域设置和日历系统的每周第一天。 | DateTimeFormatter | ||
检索包含当前日历系统的月名称的本地化字符串列表。 | DateTimeFormatter | ||
获取此实例 DateTimeFormatter 的时间样式。 | DateTimeFormatter | ||
检索包含当前日历系统的工作日名称的本地化字符串列表。 | DateTimeFormatter | ||
表示对象是否已经定义了指定的属性。 | Object | ||
表示 Object 类的实例是否在指定为参数的对象的原型链中。 | Object | ||
表示指定的属性是否存在、是否可枚举。 | Object | ||
设置此 DateTimeFormatter 对象设置日期和时间格式所用的模式字符串。 | DateTimeFormatter | ||
设置此 DateTimeFormatter 实例的日期和时间样式。 | DateTimeFormatter | ||
设置循环操作动态属性的可用性。 | Object | ||
返回此对象的字符串表示形式,其格式设置遵守区域设置特定的约定。 | Object | ||
返回指定对象的字符串表示形式。 | Object | ||
返回指定对象的原始值。 | Object |
actualLocaleIDName | 属性 |
actualLocaleIDName:String
[只读] 语言版本: | ActionScript 3.0 |
运行时版本: | Flash Player 10.1, AIR 2 |
此 DateTimeFormatter 对象使用的实际区域设置 ID 的名称。
根据操作系统和传递给 Collator()
构造函数的 requestedLocaleIDName
参数的值,该名称有三种可能的值。
- 如果请求的区域设置不是
LocaleID.DEFAULT
且操作系统支持该请求的区域设置,则返回的名称与requestedLocaleIDName
属性相同。 - 如果将
LocaleID.DEFAULT
用作构造函数的requestedLocaleIDName
参数的值,则使用由用户操作系统指定的当前区域设置的名称。LocaleID.DEFAULT
值保留用户在操作系统中的自定义设置。显式值作为requestedLocaleIDName
参数传递与使用LocaleID.DEFAULT
所产生的结果不一定相同,即使两个区域设置 ID 名称相同,也是如此。用户可能已在他们的计算机上对区域设置进行了自定义,通过请求显式区域设置 ID 名称(而不是使用LocaleID.DEFAULT
),您的应用程序将不会检索这些自定义设置。 - 如果系统不支持在构造函数中指定的
requestedLocaleIDName
,则会提供回退区域设置 ID 名称。
实现
public function get actualLocaleIDName():String
相关 API 元素
lastOperationStatus | 属性 |
requestedLocaleIDName | 属性 |
requestedLocaleIDName:String
[只读] 语言版本: | ActionScript 3.0 |
运行时版本: | Flash Player 10.1, AIR 2 |
传递到此 DateTimeFormatter 对象的构造函数的请求区域设置 ID 的名称。
如果使用了 LocaleID.DEFAULT
值,则返回的名称将是“i-default”。如果应用了回退区域设置,则实际使用的区域设置可能与请求的区域设置不同。可以使用 actualLocaleIDName
属性检索实际区域设置的名称。
实现
public function get requestedLocaleIDName():String
相关 API 元素
DateTimeFormatter | () | 构造函数 |
public function DateTimeFormatter(requestedLocaleIDName:String, dateStyle:String = "long", timeStyle:String = "long")
语言版本: | ActionScript 3.0 |
运行时版本: | Flash Player 10.1, AIR 2 |
构造新 DateTimeFormatter 对象,以根据指定区域设置的约定以及提供的日期和时间格式设置样式来设置日期和时间的格式。日期和时间样式用于将日期和时间格式设置模式设置为操作系统中预定义的与区域设置相关的模式。
此构造函数确定当前操作系统是否支持请求的区域设置 ID 名称。如果不支持,则使用回退区域设置。回退区域设置 ID 的名称可通过 actualLocaleIDName
属性确定。
如果回退用于任何 requestedLocaleIDName
、dateStyle
或 timeStyle
参数,则会设置 lastOperationStatus
属性来表示回退类型。
要根据用户的当前操作系统首选项进行格式设置,请将 requestedLocaleIDName
参数中的值 LocaleID.DEFAULT
传递给构造函数。
调用构造函数并成功完成后,将 lastOperationStatus
属性设置为:
LastOperationStatus.NO_ERROR
如果请求的区域设置 ID 名称不可用,则将 lastOperationStatus
属性设置为下列属性之一:
LastOperationStatus.USING_FALLBACK_WARNING
LastOperationStatus.USING_DEFAULT_WARNING
否则,将 lastOperationStatus
属性设置为 LastOperationStatus 类中定义的其中一个常量。
有关以上列出的警告和 lastOperationStatus
属性其他可能值的详细信息,请参阅 LastOperationStatus
类中的说明。
requestedLocaleIDName:String — 确定日期或时间格式时使用的首选区域设置 ID 名称。
| |
dateStyle:String (default = "long ") — 指定设置日期格式时使用的样式。此值对应于由 DateTimeStyle 类枚举的一个值:
| |
timeStyle:String (default = "long ") — 指定设置时间格式时使用的样式。此值对应于由 DateTimeStyle 类枚举的一个值:
|
引发
ArgumentError — 如果 dateStyle 或 timeStyle 参数不是有效的 DateTimeStyle 常量。
| |
TypeError — 如果 dateStyle 或 timeStyle 参数为 null。
|
相关 API 元素
format | () | 方法 |
public function format(dateTime:Date):String
语言版本: | ActionScript 3.0 |
运行时版本: | Flash Player 10.1, AIR 2 |
设置解释为以用户本地时间表示(使用 Date 对象的本地时间组件,如 date、day、fullYear、hours、minutes、month 和 seconds)的 Date 对象的显示字符串的格式。将使用为此 DateTimeFormatter 实例指定的区域设置 ID 的约定和日期样式及时间样式或者自定义的日期模式和时间模式来完成格式设置。
调用此方法并成功完成后,将 lastOperationStatus
属性设置为:
LastOperationStatus.NO_ERROR
否则,将 lastOperationStatus
属性设置为 LastOperationStatus
类中定义的一个常量。
参数
dateTime:Date — 要设置格式的 Date 值。有效范围为 1601 年 1 月 1 日至 30827 年 12 月 31 日。
|
String — 表示日期或时间值的设置了格式的字符串。
|
相关 API 元素
formatUTC | () | 方法 |
public function formatUTC(dateTime:Date):String
语言版本: | ActionScript 3.0 |
运行时版本: | Flash Player 10.1, AIR 2 |
根据 dateStyle、timeStyle 或日期时间模式,设置解释为以 UTC 时间表示(使用 Date 对象的 UTC 组成组件,如 dateUTC、dayUTC、fullYearUTC、hoursUTC、minutesUTC、monthUTC 和 secondsUTC)的 Date 对象的显示字符串的格式。将使用为此 DateTimeFormatter 实例指定的区域设置 ID 的约定和日期样式及时间样式或者自定义的日期模式和时间模式来完成格式设置。
调用此方法并成功完成后,将 lastOperationStatus
属性设置为:
LastOperationStatus.NO_ERROR
否则,将 lastOperationStatus
属性设置为 LastOperationStatus
类中定义的一个常量。
参数
dateTime:Date — 要设置格式的 Date 值。有效范围为 1601 年 1 月 1 日至 30827 年 12 月 31 日。
|
String — 表示日期或时间值的设置了格式的字符串。
|
相关 API 元素
getAvailableLocaleIDNames | () | 方法 |
public static function getAvailableLocaleIDNames():Vector.<String>
语言版本: | ActionScript 3.0 |
运行时版本: | Flash Player 10.1, AIR 2 |
列出此类支持的所有区域设置 ID 名称。
如果当前操作系统不支持此类,此方法返回 null 值。
调用此方法并成功完成后,将 lastOperationStatus
属性设置为:
LastOperationStatus.NO_ERROR
否则,将 lastOperationStatus
属性设置为 LastOperationStatus
类中定义的一个常量。
Vector.<String> — 一个字符串矢量,其中包含此类支持的所有区域设置 ID 名称。
|
相关 API 元素
getDateStyle | () | 方法 |
public function getDateStyle():String
语言版本: | ActionScript 3.0 |
运行时版本: | Flash Player 10.1, AIR 2 |
获取此实例 DateTimeFormatter 的日期样式。日期样式用于从操作系统检索预定义的日期格式设置模式。可通过 DateTimeFormatter()
构造函数、setDateTimeStyles()
方法或 setDateTimePattern()
方法设置日期样式值。
调用此方法并成功完成后,将 lastOperationStatus
属性设置为:
LastOperationStatus.NO_ERROR
否则,将 lastOperationStatus
属性设置为 LastOperationStatus
类中定义的一个常量。
String — 此格式程序的日期样式字符串。
可能的值:
|
相关 API 元素
getDateTimePattern | () | 方法 |
public function getDateTimePattern():String
语言版本: | ActionScript 3.0 |
运行时版本: | Flash Player 10.1, AIR 2 |
返回此 DateTimeFormatter 对象设置日期和时间格式所用的模式字符串。
可以使用以下三种方法之一设置此模式:
- 通过构造函数中使用的
dateStyle
和timeStyle
参数。 - 通过
setDateTimeStyles()
方法。 - 通过
setDateTimePattern()
方法。
有关模式语法的说明,请参阅 setDateTimePattern()
方法。
调用此方法并成功完成后,将 lastOperationStatus
属性设置为:
LastOperationStatus.NO_ERROR
否则,将 lastOperationStatus
属性设置为 LastOperationStatus
类中定义的一个常量。
String — 一个字符串,其中包含此 DateTimeFormatter 对象设置日期和时间格式所用的模式。
|
相关 API 元素
getFirstWeekday | () | 方法 |
public function getFirstWeekday():int
语言版本: | ActionScript 3.0 |
运行时版本: | Flash Player 10.1, AIR 2 |
返回一个整数,它对应于此区域设置和日历系统的每周第一天。值 0 对应于星期日,1 对应于星期一,依此类推,6 对应于星期六。
调用此方法并成功完成后,将 lastOperationStatus
属性设置为:
LastOperationStatus.NO_ERROR
否则,将 lastOperationStatus
属性设置为 LastOperationStatus
类中定义的一个常量。
int — 一个整数,对应于此区域设置和日历系统的每周第一天。
|
相关 API 元素
getMonthNames | () | 方法 |
public function getMonthNames(nameStyle:String = "full", context:String = "standalone"):Vector.<String>
语言版本: | ActionScript 3.0 |
运行时版本: | Flash Player 10.1, AIR 2 |
检索包含当前日历系统的月名称的本地化字符串列表。列表中的第一个元素表示一年中第一个月的名称。
调用此方法并成功完成后,将 lastOperationStatus
属性设置为:
LastOperationStatus.NO_ERROR
否则,将 lastOperationStatus
属性设置为 LastOperationStatus
类中定义的一个常量。
参数
nameStyle:String (default = "full ") — 表示要使用的名称字符串样式。有效值为:
| |
context:String (default = "standalone ") — 一个代码,表示在其中使用设置了格式的字符串的上下文。此上下文仅对于某些区域设置不同。有效值为:
|
Vector.<String> — 一个本地化字符串矢量,其中包含指定区域设置、名称样式和上下文的月名称。矢量中位于索引 0 处的第一个元素表示一年中第一个月的名称;下一个元素表示一年中第二个月的名称;以此类推。
|
引发
TypeError — 如果 nameStyle 或 context 参数为 null。
|
相关 API 元素
getTimeStyle | () | 方法 |
public function getTimeStyle():String
语言版本: | ActionScript 3.0 |
运行时版本: | Flash Player 10.1, AIR 2 |
获取此实例 DateTimeFormatter 的时间样式。时间样式用于从操作系统检索预定义的时间格式设置模式。可通过 DateTimeFormatter()
构造函数、setDateTimeStyles()
方法或 setDateTimePattern()
方法设置时间样式值。
调用此方法并成功完成后,将 lastOperationStatus
属性设置为:
LastOperationStatus.NO_ERROR
否则,将 lastOperationStatus
属性设置为 LastOperationStatus
类中定义的一个常量。
String — 此格式程序的时间样式字符串。
可能的值:
|
相关 API 元素
getWeekdayNames | () | 方法 |
public function getWeekdayNames(nameStyle:String = "full", context:String = "standalone"):Vector.<String>
语言版本: | ActionScript 3.0 |
运行时版本: | Flash Player 10.1, AIR 2 |
检索包含当前日历系统的工作日名称的本地化字符串列表。列表中的第一个元素表示星期日的名称。
调用此方法并成功完成后,将 lastOperationStatus
属性设置为:
LastOperationStatus.NO_ERROR
否则,将 lastOperationStatus
属性设置为 LastOperationStatus
类中定义的一个常量。
参数
nameStyle:String (default = "full ") — 表示要使用的名称字符串样式。有效值为:
| |
context:String (default = "standalone ") — 一个代码,表示在其中使用设置了格式的字符串的上下文。该上下文仅适用于月份名称随上下文变化的特定区域设置。例如,在希腊语中,月份名称单独显示时同与日一起显示时不同。有效值为:
|
Vector.<String> — 一个本地化字符串矢量,其中包含指定区域设置、名称样式和上下文的月名称。矢量中位于索引 0 处的第一个元素是星期日的名称;下一个元素是星期一的名称;依此类推。
|
引发
TypeError — 如果 nameStyle 或 context 参数为 null。
|
相关 API 元素
setDateTimePattern | () | 方法 |
public function setDateTimePattern(pattern:String):void
语言版本: | ActionScript 3.0 |
运行时版本: | Flash Player 10.1, AIR 2 |
设置此 DateTimeFormatter 对象设置日期和时间格式所用的模式字符串。
可通过以下三种方法之一设置用于对日期进行格式设置的模式:
- 通过构造函数中使用的
dateStyle
和timeStyle
参数。 - 通过
setDateTimeStyles()
方法。 - 通过
setDateTimePattern()
方法。
使用此方法的另一结果是:将覆盖此 DateTimeFormatter 对象的当前时间和日期样式,并将其值设置为 DateTimeStyle.CUSTOM
。
用于定义如何设置日期和时间格式的模式字符串。模式包含一系列将设置了格式的字符串中的日期和时间值替换的字母。例如,在“yyyy/MM”模式中,字符“yyyy”被四位数字的年份替换,它后面跟“/”字符,字符“MM”被两位数字的月份替换。
模式中所用的许多字符都可以重复使用多次以产生不同的输出,如下表所示。
如果序列超过了模式支持的最大字母数,则会将该序列映射回所支持的该模式字母的最长序列。例如:
- MMMMMM 被替换为 MMMM
- dddd 被替换为 dd
- EEEEEEE 被替换为 EEEE
- aa 被替换为 a
- hhh 被替换为 hh
- mmmm 被替换为 mm
从理论上说,一个模式最多可包含 255 个字符,但某些平台具有更严格的限制。如果模式超过了模式字符限制,则 lastOperationStatus
属性的值将被设置为 LastOperationStatus.PATTERN_SYNTAX_ERROR
。
并不是每一个操作系统都支持所有可能的模式。如果平台不支持某一种模式,则使用回退模式,并设置 lastOperationStatus
属性表示使用回退模式。如果未提供合理的回退模式,则使用空字符串,并设置 lastOperationStatus
属性表示不支持该模式。
下表列出了有效的模式字母以及它们的含义。
模式字母 | 说明 |
G | 纪元。由当前日期和日历的纪元字符串替换。并非所有操作系统都支持此模式。在不支持纪元的操作系统上,输入模式的字母被空字符串替换。
纪元模式中可以包含一到五个字母,具体解释如下:
有关公历(对于支持此模式的操作系统)的示例:
|
y | 年份。如果有两个模式字母,则显示年份的最后两位数字;否则由字母数目确定要显示的数字位数。如果年份值要求显示的数字位数多于字母数目提供的位数,则将提供完整的年份值。如果年份值要求的值少于字母数目,则将用 0 来填充年份值。下面的列表显示了 1 到 2005 年份值的结果。
示例:
|
M | 一年中的月份。月份模式中可以包含一到五个字母,具体设置如下:
示例:
|
d | 一个月中的某一天。月中某天模式中可以包含一个或两个字母,具体设置如下:
示例:
|
E | 星期中的天。星期中某天模式中可以包含一到五个字母,具体设置如下:
示例:
|
Q | 季度。某些平台不支持此模式。季度模式中可以包含一到四个字母,具体设置如下:
示例(对于支持此模式的操作系统):
|
w | 一年中的某一周。某些平台不支持此模式。此模式中可以包含一到两个字母,具体设置如下所示。
以一年的第二周为例(对于支持此模式的操作系统):
|
W | 一个月中的某一周。某些平台不支持此模式。此模式只可包含一个字母。
以 7 月的第二周为例(对于支持此模式的操作系统):
|
D | 一年中的某一天。某些平台不支持此模式。此模式中可以包含一到三个字母。
以一年中的第二天为例(对于支持此模式的操作系统):
|
F | 日历月中每周第某天的出现次数。例如,如果用来为 10 月份的第三个星期一设置日期格式,此元素显示“3”。此模式只可包含一个字母。
以 7 月份的第二个星期三为例(对于支持此模式的操作系统):
|
一个 | AM/PM 表示器。此模式只可包含一个字母:a 或 p。
示例:
|
h | 使用 12 小时制的一天中的某个小时 [1 - 12]。此模式必须包含一个或两个字母。
示例:
|
H | 使用 24 小时制的一天中的某个小时 [0 - 23]。此模式必须包含一个或两个字母。
示例:
|
K | 使用 12 小时制的一天中的某个小时 [0 - 11]。此模式必须包含一个或两个字母。并非所有操作系统都支持此模式。
示例(对于支持此模式的操作系统):
|
k | 使用 24 小时制的一天中的某个小时 [1 - 24]。此模式必须包含一个或两个字母。并非所有操作系统都支持此模式。
示例(对于支持此模式的操作系统):
|
m | 小时内第几分钟 [0 - 59]。此模式必须包含一个或两个字母。
示例:
|
s | 分钟内第几秒 [0 - 59]。此模式必须包含一个或两个字母。
示例:
|
S | 毫秒。此模式必须包含一到五个字母。根据使用的字母数对此值进行舍入。当使用五个字符 (SSSSS) 时,它表示毫秒小数。
示例:
|
z | 时区。将时区表示为相对于标准时间或夏令时(而无需参考特定位置)的字符串。并非所有操作系统都支持此模式。在不支持时区模式的操作系统上,输入模式的字母被空字符串替换。在不支持此模式的操作系统上,并不是所有的区域设置都有定义的字符串。这些区域设置将回退到本地化 GMT 格式,例如 GMT-08:00 或 GW-08:00
此时区模式必须包含一到四个字母,具体设置如下:
示例(对于支持此格式的操作系统):
|
Z | 时区。将时区表示为与 GMT 的偏移。并非所有操作系统都支持此模式。在不支持时区模式的操作系统上,输入模式的字母被空字符串替换。
此时区模式必须包含一到四个字母,具体设置如下:
示例(对于支持此格式的操作系统):
|
v | 时区。表示不需要参考特定位置或区分夏令时或标准时间的一般时区的字符串。并非所有操作系统都支持此模式。在不支持时区模式的操作系统上,输入模式的字母被空字符串替换。在支持此模式的操作系统上,如果本地化名称不可用,则提供回退字符串。
此时区模式必须包含一个或四个字母,具体设置如下:
示例(对于支持此格式的操作系统):
|
“其他文本” | 模式字符串中可以包含文本和标点。但是,从 a 到 z 和从 A 到 Z 的字符都被保留为语法字符,要将其包含在设置了格式的字符串中,则必须使用单引号将其引起来。要将单引号包含在结果字符串中,则必须在模式字符串中使用两个单引号。这两个单引号可以出现在模式字符串中带引号部分的内部或外部。不匹配的单引号对在字符串的结尾处被终止。
示例:
|
调用此方法并成功完成后,将 lastOperationStatus
属性设置为:
LastOperationStatus.NO_ERROR
否则,将 lastOperationStatus
属性设置为 LastOperationStatus
类中定义的一个常量。
参数
pattern:String |
引发
TypeError — 如果模式参数为 null。
|
相关 API 元素
setDateTimeStyles | () | 方法 |
public function setDateTimeStyles(dateStyle:String, timeStyle:String):void
语言版本: | ActionScript 3.0 |
运行时版本: | Flash Player 10.1, AIR 2 |
设置此 DateTimeFormatter 实例的日期和时间样式。日期和时间样式用于将日期和时间格式设置模式设置为操作系统中预定义的、与区域设置相关的模式。此方法可替换使用 DateTimeFormatter()
构造函数或使用 setDateTimePattern()
方法设置的样式。日期和时间模式还根据设置的样式更新。
调用此方法并成功完成后,将 lastOperationStatus
属性设置为:
LastOperationStatus.NO_ERROR
否则,将 lastOperationStatus
属性设置为 LastOperationStatus
类中定义的一个常量。
参数
dateStyle:String — 指定设置日期格式时使用的样式。此值对应于由 DateTimeStyle 类枚举的一个值:
| |
timeStyle:String — 指定设置时间格式时使用的样式。此值对应于由 DateTimeStyle 类枚举的一个值:
|
引发
ArgumentError — 如果 dateStyle 或 timeStyle 参数不是有效的 DateTimeStyle 常量。
| |
TypeError — 如果 dateStyle 或 timeStyle 参数为 null。
|
相关 API 元素
此示例使用下列区域设置:英语(美国)、法语(法国)和西班牙语(西班牙)。
此示例为该列表中的每个区域设置执行下列操作:
- 使用默认样式(长日期样式和长时间样式)创建 DateTimeFormatter 对象
- 使用默认的长日期样式设置当前日期和时间的格式。
- 使用
DateTimeStyle.NONE
和DateTimeStyle.SHORT
常量更改为仅时间的短日期样式。 - 使用仅时间的短日期样式设置当前日期和时间的格式。
package { import flash.display.Sprite; import flash.globalization.DateTimeFormatter; import flash.globalization.DateTimeStyle; public class DateTimeFormatterExample extends Sprite { private var localeList:Array = new Array("en-US", "fr-FR", "es-ES"); public function DateTimeFormatterExample() { var date:Date = new Date(); for each (var locale:String in localeList) { var dtf:DateTimeFormatter = new DateTimeFormatter(locale); trace('\n' + "LocaleID requested=" + dtf.requestedLocaleIDName + "; actual=" + dtf.actualLocaleIDName); var longDate:String = dtf.format(date); trace(longDate + " (" + dtf.getDateTimePattern() + ")"); dtf.setDateTimeStyles(DateTimeStyle.NONE, DateTimeStyle.SHORT); var shortDate:String = dtf.format(date); trace(shortDate + " (" + dtf.getDateTimePattern() + ")"); } } } }
此示例为该列表中的每个区域设置执行下列操作:
- 创建 3 个输入和输出文本字段。
- 使用美国英语区域设置创建 DateTimeFormatter 对象。
- 调用
configureTextField()
函数,该函数将设置文本字段的位置和大小,并向patternField
对象添加事件侦听器。 - 用户在
patternField
文本字段中输入模式后,textInputHandler
函数将使用该模式设置当前日期和时间的格式,并在输出文本字段中显示结果和lastOperationStatus
值。
package { import flash.display.Sprite; import flash.events.Event; import flash.globalization.DateTimeFormatter; import flash.text.*; public class DateTimePatternExample extends Sprite { private var patternField:TextField = new TextField(); private var resultField:TextField = new TextField(); private var statusField:TextField = new TextField(); private var date:Date = new Date(); private var dtf:DateTimeFormatter = new DateTimeFormatter("en-US"); private function configureTextField():void { patternField.type = TextFieldType.INPUT; patternField.width = 300; patternField.height = 20; patternField.background = true; patternField.border = true; resultField.y = 40; resultField.width = 300; resultField.height = 20; statusField.y = 80; statusField.width = 300; statusField.height = 20; addChild(patternField); addChild(resultField); addChild(statusField); patternField.addEventListener(Event.CHANGE,textInputHandler); } private function textInputHandler(event:Event):void { dtf.setDateTimePattern(patternField.text); statusField.text = dtf.lastOperationStatus; resultField.text = dtf.format(date); } public function DateTimePatternExample() { configureTextField(); } } }
Tue Jun 12 2018, 11:04 AM Z