2009-11-20 72 views
3

我使用UTC时间的Java 64位长表示System.currentTimeInMillis()并将其作为字符串发送给Actionscript客户端,并且我想将其转换为一个Actionscript UTC Date将64位长的UTC时间戳转换为Actionscript日期

问题是Actionscript(和其他像Javascript一样的ECMAScript)仅使用64位浮点数表示,因此在转换64位长时间戳时会丢失精度。

我可以创建自己的Long类并管理高位和低位,并像那样转换日期(但是尽我所能,我还可以发送日期格式化的字符串,我可以使用Date.parse() )。

+1

+1因为你似乎有一个问题和它的答案:) – Amarghosh 2009-11-21 07:27:01

+0

如果你发送Java 64位表示,最接近你得到的是双(http://livedocs.adobe.com/flash/ 9.0/ActionScriptLangRefV3/flash/utils/ByteArray.html#readDouble())不长,但正如您所说,这不值得遇到麻烦。 – 2009-11-21 10:15:58

回答

1

除非你真的关注性能的原因,否则使用String(你使用的是ActionScript,所以你几乎肯定不会)。如果您需要查看线路上的消息,它将更加明显,不易出错并且更易于调试。