Le constructeur Flex Date () convertit incorrectement les horodatages Unix argh
C'est sérieusement en train de me tuer. Je suis en train de convertir un timestamp Unix (1236268800, ce qui équivaut à Thu, 05 Mar 2009 16:00:00 GMT) de l'objet Date de Flex.
var timestamp:Number = 1236268800;
trace(new Date(timestamp));
Output: Wed Jan 14 23:24:28 GMT-0800 1970
Aussi essayé ceci:
var timestamp:Number = 1236268800;
var date:Date = new Date;
date.time = timestamp;
trace(date);
Output: Wed Jan 14 23:24:28 GMT-0800 1970
L'une de ces méthodes de travail. Ce que je fais mal?
source d'informationauteur Jarin Udom
Vous devez vous connecter pour publier un commentaire.
vous devez le convertir en millisecondes, la multiplier par 1000
http://livedocs.adobe.com/flex/2/langref/Date.html#Date()
Si vous passez un argument de type de données, la Date objet est assigné une valeur de temps basé sur le nombre de millisecondes depuis le 1er janvier 1970 à 0:00:000 GMT, comme spécifié par l'argument.
Vous devez multiplier votre nombre par 1000.
Puisque c'est analysée comme le nombre de millisecondes, il suffit de multiplier l'époque valeur par 1000:
En AS3, le constructeur Date() prend une valeur en millisecondes, alors que Unix temps est exprimé en secondes. Essayez ceci: