Convertire i millisecondi in formato minuti:secondi.millisecondi

Da Gambas-it.org - Wikipedia.

Se si posseggono i millisecondi di un tempo, volendoli convertire in formato minuti:secondi.millisecondi, si potranno adottare alcune modalità.

Uso della funzione "Date()"

Come è noto, la funzione Date()" restituisce un valore temporale di tipo Date dai dati passati ad uno o più dei suoi parametri. il valore dei millisecondi va passato all'ultimo parametro della funzione "Date()".
Il risultato va opportunamente convertito in stringa mediante la funzione "CStr()".

Esempio pratico:

Public Sub Main()

  Dim millisecondi As Integer
  Dim s As String
    
  millisecondi = 12345
  
  s = CStr(Date(0, 0, 0, 0, 0, 0, millisecondi))
 
  Print s
 
End


Uso della funzione "Time()"

Più brevemente si potrà usare la funzione "Time()": [nota 1]

Public Sub Main()
 
  Dim secondi As Integer
  Dim s As String
   
  secondi = 12345
   
  s = CStr(Time(0, 0, 0, secondi * 1000))
  
  Print s
  
End


Uso della funzione "Format()"

Quest'altra modalità prevede l'uso della funzione "Format()".
Nel secondo parametro di tale funzione va specificato il formato desiderato della rappresentazione oraria, come ad esempio "nn:ss.uu".

La sintassi è la seguente:

Format(millisecondi, "nn:ss.uu") As String

Esempio:

Public Sub Main()

  Print Format(Date(0, 0, 0, 0, 0, 0, 456.789 * 1000), "nn:ss.uu")

End


Uso dell'operatore Mod

Con l'operatore Mod è possibile convertire (come considerato da questa pagina) i millisecondi in minuti, secondi e restanti millisecondi.


Mostriamo un esempio:

Public Sub Main()
 
  Dim minuti, secondi, millisecondi As Integer
  
  millisecondi = 654321
  
  minuti = ((millisecondi \ 1000) Mod 3600) / 60
  secondi = ((millisecondi \ 1000) Mod 3600) Mod 60
  millisecondi = millisecondi Mod 1000
  
  Print minuti; ":"; secondi; "."; millisecondi
  
End


Note

[1] Al riguardo vedere anche le seguenti pagine della Wiki: