2011-12-31 11 views

Respuesta

15

puede probar esta

DateTime startTime = DateTime.Now; 

DateTime endTime = DateTime.Now.AddSeconds(75); 

TimeSpan span = endTime.Subtract (startTime); 
Console.WriteLine("Time Difference (seconds): " + span.Seconds); 
Console.WriteLine("Time Difference (minutes): " + span.Minutes); 
Console.WriteLine("Time Difference (hours): " + span.Hours); 
Console.WriteLine("Time Difference (days): " + span.Days); 

salida como,

Time Difference (seconds): 15 
Time Difference (minutes): 1 
Time Difference (hours): 0 
Time Difference (days): 0 

y el equivalente VB.Net a lo anterior:

Dim startTime As DateTime = DateTime.Now 

Dim endTime As DateTime = DateTime.Now.AddSeconds(75) 

Dim span As TimeSpan = endTime.Subtract(startTime) 
Console.WriteLine("Time Difference (seconds): " + span.Seconds) 
Console.WriteLine("Time Difference (minutes): " + span.Minutes) 
Console.WriteLine("Time Difference (hours): " + span.Hours) 
Console.WriteLine("Time Difference (days): " + span.Days) 
+0

Buena Uno Muchas gracias ... –

+4

Para cualquiera que use esto, tenga en cuenta que span.Segundos NO devolverá la diferencia de tiempo total en segundos, sino la diferencia en los componentes de segundos (hasta 59 máx.). Para devolver la diferencia total, utilice span.TotalSeconds, span.TotalMinutes, etc. – http203

+0

Este no es código de VB.net, esto es C#. – cybermonkey

5

Al restar 2 DateTime s, obtiene una estructura TimeSpan que tiene todas esas propiedades para usted.

3

Sobre la base de la pregunta, el cálculo del tiempo entre dos fechas, es mejor usar DateDiff. Por ejemplo, a continuación, también podemos reemplazar la hora con el minuto, segundo, mes, etc .:

Dim timeDif As Long = DateDiff(DateInterval.Hour, startDate, endDate) 

Usando TimeSpan devuelve la diferencia de tiempo excluido el ciclo diario, ver más abajo código:

Dim startDate As Date = Date.Now 
Dim endDate As Date = startDate.AddDays(3) 'add 3 days to startDate 
Dim timeSpan As TimeSpan = endDate.Subtract(startDate) 
Dim difDays As Integer = timeSpan.Days 'get 3 days 
Dim difHr As Integer = timeSpan.Hours 'get 0 hours although 3 days difference 
Dim difMin As Integer = timeSpan.Minutes 'get 0 minutes although 3 days difference 
Cuestiones relacionadas