Convertir un Ttime en String et vice-versa

//Pour des durées suppérieures à 24 heures, StrToTime & TimeToStr posent problèmes :)
Function TextToTime(S : String) : Integer;
Var
p, i : integer;
Sh, Sm, Ss : String;
Begin
Sh:='';
SM:='';
SS:='';
i:=1;
p:=0;
While i<=length(s) do Begin
if (s[i]<>':') then Begin
Case P of
0 : SH:=Sh+s[i];
1 : SM:=SM+S[i];
2 : SS:=SS+S[i];
end;
end else inc(p);
inc(i);
end;
try
Result:=(StrToInt(SH)*3600)+(StrToInt(SM)*60)+(StrToInt(SS))
except
Result:=0;
end;
end;

Function TimeToText(T : Integer) : String;
Var
H, M, S : String;
ZH, ZM, ZS : Integer;
Begin
ZH:=T div 3600;
ZM:=T div 60-ZH*60;
ZS:=T-(ZH*3600+ZM*60);
if ZH<10 then H:='0'+IntToStr(ZH) else H:=IntToStr(ZH);
if ZM<10 then M:='0'+IntToStr(ZM) else M:=IntToStr(ZM);
if ZS<10 then S:='0'+IntToStr(ZS) else S:=IntToStr(ZS);
Result:=H+':'+M+':'+S;
end;
Ajouter un commentaire
Pseudo
Adresse email
Site internet (optionnel)
Votre commentaire
Fiche de l'article
Mise a jour13/07/2002
VisualisationVu 990 fois
PublicInternaute zz
CategorieDelphi - Trucs et astuces - Autre categorie
Auteur de l'article
Communauté Delphi Communauté Delphi
connecté le 02/11/2011
0 articles dans la section
Contacter l'auteur