Actionscript 3 将日期转换为UTC的正确方法
如果这个问题没有多大意义,我深表歉意,但我是Actionscript的新手,不知道你能否帮我解决这个问题 我正在构建一个给定时区的应用程序,告诉您该位置的时间。当我在使用时区为GMT(UTC)的位置时,它工作得非常好,但是如果主机上的时区是其他任何东西,它将非常糟糕,因为它仍然会将时间添加到主机上 所以我想我要做的是,将机器时间转换成UTC(使用getUTCDate()等),并以此为基础。我想知道这是正确的方法,还是有更好的方法 任何帮助都将不胜感激 提前感谢, 更新 在Eugeny89的回答之后,我修改了代码并创建了这个方法来将当前日期转换为UTC。只是想知道这是不是最好的办法Actionscript 3 将日期转换为UTC的正确方法,actionscript-3,actionscript,Actionscript 3,Actionscript,如果这个问题没有多大意义,我深表歉意,但我是Actionscript的新手,不知道你能否帮我解决这个问题 我正在构建一个给定时区的应用程序,告诉您该位置的时间。当我在使用时区为GMT(UTC)的位置时,它工作得非常好,但是如果主机上的时区是其他任何东西,它将非常糟糕,因为它仍然会将时间添加到主机上 所以我想我要做的是,将机器时间转换成UTC(使用getUTCDate()等),并以此为基础。我想知道这是正确的方法,还是有更好的方法 任何帮助都将不胜感激 提前感谢, 更新 在Eugeny89的回答之
private function convertToUTC(dtDate:Date):Date{
dtDate.setTime(dtDate.getTime() + (dtDate.getTimezoneOffset() * 60000))
return dtDate;
}
使用类
日期的getTimezoneOffset()
(用户时间和UTC时间之间的分钟差)或getUTCHours()
。有关更多详细信息,请参见。这就是诀窍。用我所做的更新了我以前的帖子。你能给我一个更好的建议吗?嗯,那是starangedtDate.getTime()
返回毫秒,而getTimezoneOffset()
返回分钟。我认为您想编写dtDate.getTimezoneOffset()/60000
,而不是dtDate.getTimezoneOffset()*60000
。但总的来说,这种方法似乎是好的。