Les Snippets

Connexion

Convertir un nombre de millisecondes en Heures, Minutes, Secondes par API

Niveau requis pour utiliser/comprendre cette source : 1 ( Débutant )
Créé le 01/04/2006 12:57:05 et initié par Gobillot [Liste]
Date de mise à jour : 30/11/2007 08:46:11
Vue : 24441
Catégorie(s) : Date & Heure
Langages dispo pour ce code :
- VB6
- Delphi 5
- VB6



Langage : VB6
Date ajout : 01/04/2006
Posté par Gobillot [Liste]
DateMAJ : 01/04/2006
Private Declare Function GetTickCount Lib "kernel32" () As Long
Private Declare Function StrFromTimeInterval Lib "shlwapi" Alias "StrFromTimeIntervalA" (ByVal pszOut As String, ByVal cchMax As Long, ByVal dwTimeMS As Long, ByVal dwDigits As Long) As Long
 
' Fonction pour transformer un nombre en Heures, Minutes, Secondes
' lTime est en milliseconds
' lDigits est optionnel
'   3 -> heures
'   5 -> heures & minutes
'   7 -> heures & minutes & secondes
Private Function GetFormattedTime(ByVal lTime As Long, Optional lDigits As Long = 7) As String
   Dim StrOut As String
   StrOut = Space(64)
   Call StrFromTimeInterval(StrOut, Len(StrOut) - 1, lTime, lDigits)
   GetFormattedTime = Trim(StrOut)
End Function

'  exemple d'utilisation:
   MsgBox "Your computer works: " & GetFormattedTime(GetTickCount)

Langage : Delphi 5
Date ajout : 05/08/2006
Posté par f0xi [Liste]
function TickToLisibleTime(const Tick : cardinal) : string;
var H,N,S,Z : word;
begin
  Z := Tick mod 1000;
  S := (Tick div 1000) mod 60;
  N := (Tick div 60000) mod 60;
  H := (Tick div 3600000);
  result := format('%.2d:%.2d:%.2d.%.3d',[H,N,S,Z]);
end;

Langage : VB6
Date ajout : 30/11/2007
Posté par Proger [Liste]
DateMAJ : 30/11/2007
Function HMS(ByVal s As Long) As String
 'avec -1 < s < 360000
 Dim j As Long, h As Long, m As Long
 Dim osB(1 To 8) As Byte
         osB(3) = 58 ' ":"
         osB(6) = 58
     
         m = s \ 60
         s = s - m * 60
         h = m \ 60
         m = m - h * 60
         
         j = s \ 10
         osB(8) = 48 + (s - j * 10)
         osB(7) = 48 + j
         
         j = m \ 10
         osB(5) = 48 + (m - j * 10)
         osB(4) = 48 + j
         
         j = h \ 10
         osB(2) = 48 + (h - j * 10)
         osB(1) = 48 + j
         
         HMS = StrConv(osB(), vbUnicode)
   End Function
Remarque :
Version avec secondes uniquement (soit millisecondes \ 1000)
Algo brut, entre 4 et 8 fois plus rapide qu'avec l'intervention de Format$(), CDate() ou API, sous VB6 (IDE ou compilé)
Combinaisons de shl/sar quand compilé, pas de idiv.

Snippets en rapport avec : Convertir, Heures, Minutes, Secondes, Shlwapi



Codes sources en rapport avec : Convertir, Heures, Minutes, Secondes, Shlwapi

{Visual Basic, VB6, VB.NET, VB 2005} CONVERTISSEUR DE MINUTES EN HEURES
Je suis débutant et j'ai fait ce petit programme avec un code très simple, vous pouvez additionner, ...

{C / C++ / C++.NET} CONVERTION DU TEMPS
Prog pour convertir jours, heures, minutes, secondes. Je l'ai crée suite à un probleme à l'école ...

{PHP} AFFICHER UNE DATE RELATIVE (EN FRANÇAIS)
string afficherDateRelative(int $timestamp); // Procède au calcul de différence entre le timestam...

{Flash} CONVERTIR MILLISECONDES EN MINUTES:SECONDES. ( EN AS2 / DÉBUTANT )
Un simple script pour convertir une durée exprimée en millisecondes en minutes:secondes. Je me su...

{PHP} CHIFFRES EN LETTRES
cette source converti des chiffres en des chaines de caractère en toute lettre supporte jusqu'à 999...

{C / C++ / C++.NET} ID3 TAG COVER ALBUM IMAGE
album art cover ajout pour mp3 choisi un dossier avec de la music mp3 si il y a un ou plusieur im...

{Visual Basic, VB6, VB.NET, VB 2005} CONVERTIR FORMAT IMAGE
Convertir les formats image par lot ou image par image. Formats supportés: jpg, gif, bmp, wmf, png, ...

{Flash} COLORMANAGER AS3
Je partage cette classe que j'ai créée pour m'aider dans des projets nécessitant de travailler avec ...

{SQL} CALCUL UNE DIFFÉRENCE DE DATE EN FONCTION DE JOURS FÉRIÉS/TRAVAILLÉS ET DE PLAGE HORAIRE
Cette fonction permet de calculer une différence en minutes entre deux dates/heures, dans le cadre (...

{PHP} CONVERTIR LES RÉFÉRENCES DE COLONNE EXCEL DE CHIFFRE EN LETTRE
J'ai eu besoin de créer des tableau à l'aide de classes spécifique qui ne travaillaient qu'avec les ...