¿Tiene .NET una constante por el número de segundos en un día (86400)?.NET constante por el número de segundos en un día?
Respuesta
Si desea legibilidad puede usar:
(new TimeSpan(1,0,0,0)).TotalSeconds
aunque sólo usar su propio const podría ser más claro :)
No es una constante, pero me deja fuera del negocio del segundo conteo. – lance
Esta respuesta simple me hizo repensar el enfoque que estaba tomando. No es exactamente el código que utilicé para resolver finalmente mi problema, pero estoy a favor de elegir una respuesta basada en la pesca que enseñó en lugar del pescado que proporcionó. Gracias. – lance
Aún más legible: TimeSpan.FromDays (1) .TotalSeconds – ckarras
No es un valor constante
Eso es inesperado :) –
Los segundos bisiestos no son el único problema, los días en que se producen cambios en el horario de verano tienen una hora o menos (contando desde 00: 00-24: 00) en las zonas horarias correspondientes. – GaussZ
Afortunadamente, en aproximadamente 363/365 casos, 86400 es lo suficientemente bueno.;) –
más cercana a su va a llegar sin especificar su propiedad:
System.TimeSpan.TicksPerDay/System.TimeSpan.TicksPerSecond
que incluso podría terminar con esto como un método de extensión ...
public static Extensions
{
public static int SecondsPerDay(this System.TimeSpan ts)
{
return System.TimeSpan.TicksPerDay/System.TimeSpan.TicksPerSecond
}
}
No es una constante, el número de segundos en un día varía según el día y la zona horaria. Por lo tanto, no es algo que Microsoft pueda ofrecer.
no me dirá que un día en Arizona no es las mismas 24 horas que en, por ejemplo, Singapour? – Kai
Número de segundos en un normal día es 86400. Pero los días en que ocurren los cambios de horario de verano pueden ser más cortos o más largos.
Sin embargo, escribir 24 * 60 * 60 no es una mala práctica en absoluto, ¡y es muy probable que también esté alineado por el compilador!
Está realmente disponible en .NET framework. Se puede llegar a ella de esta manera:
using System;
using System.Reflection;
public static class DateTimeHelpers {
public static int GetSecondsPerDay() {
object obj = typeof(DateTime).GetField("MillisPerDay", BindingFlags.NonPublic | BindingFlags.Static).GetValue(null);
return (int)obj/1000;
}
}
Por favor, no use eso.
No me parece una constante ... :) – stakx
Bueno, no debería ser así. Controla sin problemas la actualización de .NET necesaria después de que la rotación de la Tierra se ralentiza lo suficiente. –
tanto esfuerzo no sólo para definir una constante de 60 x 60 x 24;)
double secondsPerDay = TimeSpan.FromDays(1).TotalSeconds;
Este fue un comentario de @ckarras. Agregándolo como una respuesta para hacerlo más visible.
- 1. Obtenga el número de segundos desde
- 2. Obtenga segundos hasta el final del día en PHP
- 3. Python: cómo obtener el número de mili segundos por jiffy
- 4. ¿Cómo contar el número de registros por día?
- 5. ¿Es un día siempre de 86,400 segundos de epoch?
- 6. número de programación de dynos web por hora del día
- 7. cómo conseguir el primer día y el último día de la semana y el año número
- 8. función para convertir el tiempo en número de segundos
- 9. Pasar un día con JSON a .NET
- 10. Dividir un número en segundos en días, horas, minutos y segundos?
- 11. .NET LINQ al grupo de entidades por fecha (día)
- 12. fullcalendar, cómo limitar el número de eventos por día en la vista de mes
- 13. ¿Cómo obtener el día de la semana del número del día en Javascript?
- 14. ¿Cuál es el máximo número de métodos por clase .NET
- 15. Macro sustitución de un número constante de GAS
- 16. Cómo utilizar un valor de cadena/columna como una constante de fecha MySQL intervalo (día, mes ...)?
- 17. Buscar el nombre del día por año, mes y día
- 18. Datos de Highcharts desactivados por un día
- 19. Último día del mes en .NET
- 20. Cómo restar un número constante de una columna
- 21. MySQL PHP grupo por día y total por cada día
- 22. Ejecutar un archivo por lotes cada x número de segundos con PowerShell
- 23. Convierta un número en el valor hexadecimal en .NET
- 24. ¿Número de clases en .NET?
- 25. ¿Cómo obtener el primer día de un número de semana determinado en PHP (multiplataforma)?
- 26. Cómo obtener el primer día de un número de semana determinado en Java
- 27. consulta mysql: cómo obtener el número de sí/no califican por día
- 28. Cambiar ícono por día
- 29. Visual Studio Builds por día
- 30. Constante de número de línea en Actionscript 3.0?
¿Por qué no puedes especificar la tuya? No es probable que cambie pronto ... –
Al haber visto las constantes de System.Net.WebRequestMethods.Http (omnipresentes, invariables y de uso común, al igual que SECONDS_IN_A_DAY), no me habría sorprendido si .NET tuviera proporcionado algo aquí. – lance
Sí, es '86400'. No lo use, sin embargo, tiene errores y siempre devuelve el valor 86400, independientemente de los segundos intercalares y la configuración regional. – Zano