Salut,
un petit souci de date,
je recupère un format date en string de format timestamp
exemple : 1119930901
comment je fais pour passer en année mois jours ?
merci d'avance
Salut,
un petit souci de date,
je recupère un format date en string de format timestamp
exemple : 1119930901
comment je fais pour passer en année mois jours ?
merci d'avance
Tu as essayé un cast brutal ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 var Tampon : TDateTime; begin Tampon := TDateTime(StrToFloat(maChaine)); end;
MD Software
---------------------------
F.A.Q. Delphi - Cours Delphi - Composants Delphi - Sources Delphi
je connais pas ca, c'est apparemment brutal
il me dit transtypage incorrect
TDateTime(StrToFloat(maChaine));
pige pas pourquoi tdatetime ?
il y a plusieurs formats de codage : Unix, Windows ...
il doit y avoir des fonctions style UnixToDateTime pour convertir un timestamp en TdateTime qui est le format privilégié de Delphi, puis es fonctions DateTimeToString...
Delphi 5 Pro - Delphi 11.3 Alexandria Community Edition - CodeTyphon 6.90 sous Windows 10 ; CT 6.40 sous Ubuntu 18.04 (VM)
. Ignorer la FAQ Delphi et les Cours et Tutoriels Delphi nuit gravement à notre code !
il y'a bien une fonction :
UnixToDateTime
mais comment je passe du string qui est ma valeur de départ à timestamp ?
date:= strtodatetime(ajout_date);
date_convert := UnixToDateTime(date);
erreur : Types incompatibles : 'Int64' et 'TDateTime'
j'ai trouvé ca :
le problème c'est que j'ai une erreur d'exeption 1119930901 n'est pas uen valeur correct :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 function UnixToDateTime(USec: Longint): TDateTime; begin //Example: UnixToDateTime(1003187418); Result := (Usec / 86400) + UnixStartDate; end; date:= strtoint(ajout_date); date_convert:=UnixToDateTime(ajout_date);
est ce quelqu'un a essaye cette fonction ?
je la vois partout mais chez moi ca fonctionne pas
Bonjour
Le plus simple ne serait'il pas EncodeDate
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 An := '2005'; Mois := '1'; Jour := '5'; Date := EncodeDate(An, mois, jour);
Dans mon cas, j'ai un format Unix date, donc je pense pas que EncodeDate fasse l'affaire.
C'est normal que ceci ne marche pasTu passes à la fonction un TDateTime alors qu'il attend un LongInt.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 date:= strtodatetime(ajout_date); date_convert := UnixToDateTime(date);
Essaye ça
Code : Sélectionner tout - Visualiser dans une fenêtre à part date_convert := UnixToDateTime(StrToInt64(ajout_date));
MD Software
---------------------------
F.A.Q. Delphi - Cours Delphi - Composants Delphi - Sources Delphi
non ca fonctionne pas
si il attend un Longint, et que je convertit en Int64, y'a problème non ?
erreur d'exeption 1119930901 n'est pas une valeur correct,
Je viens de faire un test, ce code fonctionne bien
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 procedure TForm1.Button1Click(Sender: TObject); var toto : TDateTime; begin toto := UnixToDateTime(StrToInt64('1119930901')); ShowMessage(DateTimeToStr(toto)); end;
MD Software
---------------------------
F.A.Q. Delphi - Cours Delphi - Composants Delphi - Sources Delphi
j'avais un espace quand je recuperais ma date ...
merci MD, j'essaierai la prochaine fois d'etre plus attentif
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 date_convert := UnixToDateTime(StrToInt64(trim(ajout_date)));
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager