Horodatage Unix à la date et l'heure réelles<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />J'extrait des données d'une base de données et une partie de ceci est une "heure de début" pour un processus. Le principal problème avec ceci est qu'il est au format UNIX donc renvoie donc un nombre à 10 chiffres, je sais que la formule pour convertir cela en date et heure réelles est la suivante
(tiré d'Excel)
=CELLULE/(60*60*24)+"1/1/1970"
donc changer une colonne dans JMP devrait être simple mais je n'arrive pas à le faire. Le (60*60*24) est facile mais sur quel format dois-je régler le +"1/1/1970" pour que cela fonctionne ?
J'ai joint un tableau de données contenant des dates des 6 dernières années à titre d'exemple. Mon sentiment est que cela aurait pu être demandé auparavant, mais je ne vois rien qui s'y rapporte.
Salutations
David
Re : Horodatage Unix à la date et l'heure réellesJe pense que cela devrait suffire si vous supprimez le temps zéro unix de la date et de l'heure de JMP car les deux sont en secondes. J'espère que vous n'aurez pas à toucher aux fuseaux horaires ( Le problème avec l'heure et les fuseaux horaires - Computerphile (youtube.com) )
Names Default To Here(1);
unix_zero = Date MDY(1,1,1970);
date_now = Today();
unix_time = date_now - unix_zero;
// In Hours() might be helpful if you need timezone conversion
// just to verify that time is correct I'm using Unix Timestamp converter REST API from https://unixtime.co.za/
aa = Associative Array();
aa["timestamp"] = unix_time;
request = New HTTP Request(
URL("https://showcase.api.linx.twenty57.net/UnixTime/fromunix"),
Method("GET"),
Query String(aa)
);
data = request << send;
Show(As Date(date_now));
show(data);
Re : Horodatage Unix à la date et l'heure réellesMa question est tout le contraire, comment puis-je convertir le temps réel en horodatages Unix ?
Re : Horodatage Unix à la date et l'heure réellesYup .... je savais qu'il me manquait quelque chose lol. Merci!
Re : Horodatage Unix à la date et l'heure réellesVous avez cliqué sur "Date" pour la sélection du format à choisir. Sélectionnez "Heure" et il vous donnera tous les formats Date/HeureRe : Horodatage Unix à la date et l'heure réellesSalut Bill,
Je sais que ce message date d'il y a toujours, mais j'essaie de faire la même chose et j'échoue. J'ai la formule et toutes ces entrées dans la nouvelle colonne, mais je ne trouve pas l'option permettant de sélectionner m/d/yh:m:s pour la convention de date. Je n'ai que les options pour sélectionner les nombreuses variantes de m/d/y. Y a-t-il quelque chose qui me manque pour obtenir l'heure incluse dans la sortie de date ? Merci.


@Bill_Worley a écrit:
Un autre ajout - a parlé avec Jeff hors ligne et il a fait valoir un très bon point.N'utilisez pas la chaîne de caractères "MDYHMS" si vous voulez faire des calculs avec vos horodatages.Utilisez les informations de colonne pour formater vos nouvelles heures en tant que données continues.

Re : Horodatage Unix à la date et l'heure réellesJeff/ Bill,
J'ai remarqué que c'était également en secondes, mais j'ai utilisé le formatage disponible pour le transformer en temps "correct".
Merci encore.
David
Re : Horodatage Unix à la date et l'heure réellesJeff,
J'avais remarqué que le 4 janvier 1904 apparaissait plusieurs fois et je pensais que c'était une erreur de formatage ou de calcul que j'avais commise, cela n'a fait qu'ajouter à ma confusion pourquoi je ne pouvais pas faire fonctionner cette conversion de date.
Merci pour votre aide
David
Re : Horodatage Unix à la date et l'heure réellesUn autre ajout - a parlé avec Jeff hors ligne et il a fait valoir un très bon point.N'utilisez pas la chaîne de caractères "MDYHMS" si vous voulez faire des calculs avec vos horodatages.Utilisez les informations de colonne pour formater vos nouvelles heures en tant que données continues.

Re : Horodatage Unix à la date et l'heure réellesJuste un ajout au message de Jeff.Quand j'ai utilisé sa formule, j'ai récupéré le nombre de secondes.J'ai ajouté le format MDYHMS à la formule pour obtenir la date et l'heure

Facture
Re : Horodatage Unix à la date et l'heure réellesLa date UNIX est le nombre de secondes depuis minuit le 1er janvier 1970.
JMP stocke les dates sous forme de nombre de secondes depuis minuit, le 1er janvier 1904.
Donc, nous avons juste besoin d'ajouter la valeur de date JMP pour le 1er janvier 1970 à la valeur de date Unix. Vous pouvez utiliser la fonction Date DMY() pour cela :

-Jeff
Re : Horodatage Unix à la date et l'heure réellesessayez 1jan1970 sans guillemets.
format( 1jan1970+1445432452, "mdy" )
"21/10/2015"
(C'est aujourd'hui, pour référence future.j'ai eu Convertisseur d'époque - Convertisseur d'horodatage Unix pour me donner l'heure Unix d'aujourd'hui : 1445432452 )
l'ajout du 1jan1970 fonctionne car l'heure Unix pour le 1jan1970 est zéro.Et parce que JMP et Unix comptent tous les deux en secondes.
Attention, j'ai vu des discussions sur le début de l'ère Unix : Heure Unix - Wikipédia, l'encyclopédie libre dit
The first edition Unix Programmer's Manual dated 3 November 1971 defines the Unix time as "the time since 00:00:00, 1 January 1971, measured in sixtieths of a second".[5]The User Manual also commented that "the chronologically-minded user will note that 232 sixtieths of a second is only about 2.5 years". Because of this limited range, the epoch was redefined more than once,[citation needed] before the rate was changed to 1 Hz and the epoch was set to its present value of 1 January 1970 00:00:00 UTC. This yielded a range of about 136 years, though with more than half the range in the past (see discussion of signedness above).