1
var df:DateTimeFormatter = new DateTimeFormatter();
df.dateTimePattern = "yyyy/MM/dd HH:mm:ss Z";
var formattedDate:String = df.format(new Date(2011, 6, 7));

formattedDate 值为“2011/07/07 00:00:00”。我究竟做错了什么?无法格式化任何特定于时区的内容?我对此感到疯狂...非常感谢您的帮助

4

2 回答 2

2

请参阅http://help.adobe.com/en_US/FlashPlatform/beta/reference/actionscript/3/flash/globalization/DateTimeFormatter.html#setDateTimePattern%28%29

文档说某些操作系统不支持时区模式......显然是因为实现格式化的类使用操作系统特定的时区功能。

解决方法是实现您自己的格式化程序。

于 2011-07-07T12:22:34.457 回答
0

您不必编写自己的格式化程序...

在 Flex 4.5 中,他们添加了一些新的本地化功能。不幸的是,您不能总是依赖系统来自动正确识别语言环境。

这里 adobe 描述了四种不同的方法,您可以使用这些方法来识别用户的区域设置并进行设置。设置好后,格式化程序将正常工作,因此您无需滚动自己的格式化程序。

http://help.adobe.com/en_US/flex/using/WS19f279b149e7481c-1c03f02c12bd00c4763-8000.html#WS19f279b149e7481c-99797f112bd080033f-8000

于 2011-07-07T14:32:48.630 回答