Apache flex Flex 4.5 DateTimeFormatter:为什么在dateTimePattern中忽略特定于时区的信息?

Apache flex Flex 4.5 DateTimeFormatter:为什么在dateTimePattern中忽略特定于时区的信息?,apache-flex,datetime,flex4.5,formatter,Apache Flex,Datetime,Flex4.5,Formatter,格式化日期值为“2011/07/07 00:00:00”。我做错了什么?无法格式化任何特定于时区的内容?我对这个越来越着迷了。。。非常感谢您的帮助请参阅 文档中说有些操作系统不支持时区模式。。。显然是因为实现格式化的类对时区使用操作系统特定的函数 解决方法是实现您自己的格式化程序 您不应该编写自己的格式化程序 在Flex4.5中,他们添加了一些新的本地化特性。不幸的是,您不能总是依靠系统来自动正确识别区域设置 在这里,adobe描述了四种不同的方法,可以用来识别用户的语言环境并进行设置。设置后,

格式化日期值为“2011/07/07 00:00:00”。我做错了什么?无法格式化任何特定于时区的内容?我对这个越来越着迷了。。。非常感谢您的帮助

请参阅

文档中说有些操作系统不支持时区模式。。。显然是因为实现格式化的类对时区使用操作系统特定的函数


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

您不应该编写自己的格式化程序

在Flex4.5中,他们添加了一些新的本地化特性。不幸的是,您不能总是依靠系统来自动正确识别区域设置

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


是的,windows不适合特定于地区的时区(出于某些奇怪的原因)。您最好扩展格式化程序,并根据
Date.timezoneOffset
手动添加时区。谢谢。我想了想,但我不明白为什么dateTimePattern的默认方法不起作用。我还是不知道。standart Date.toString方法输出时区信息,timezoneOffset属性会这样做,操作系统怎么可能不支持Z模式。奇怪……我知道你对时区的意思(你的时区是UTC),但是从6变为7与Date.month是以零为基础的这一事实有任何关系,日期。日期是一个基础吗?谢谢你的建议。我想我会写我自己的格式化程序购买扩展DateTimeFormatter并手动添加Z信息
var df:DateTimeFormatter = new DateTimeFormatter();
df.dateTimePattern = "yyyy/MM/dd HH:mm:ss Z";
var formattedDate:String = df.format(new Date(2011, 6, 7));