Quiero quitar/eliminar segundos de un DateTime. Comenzando con una fecha y hora completa como:
DateTime datetime = DateTime.UtcNow;Quiero quitar los segundos usando cualquier función incorporada o expresión regular.
Entrada: 02/08/2015 09:22:45
Resultado esperado: 02/08/2015 09:22:00
Puede crear una nueva instancia de fecha con los segundos establecidos en 0.
DateTime a = DateTime.UtcNow; DateTime b = new DateTime(a.Year, a.Month, a.Day, a.Hour, a.Minute, 0, a.Kind); Console.WriteLine(a); Console.WriteLine(b);Tu puedes hacer
DateTime dt = DateTime.Now; dt = dt.AddSeconds(-dt.Second);para poner los segundos a 0.
DateTime en realidad se almacena por separado como Date y TimeOfDay . Podemos reinicializar fácilmente la fecha sin incluir los segundos en la inicialización de TimeSpan . Esto también garantiza que se eliminen los milisegundos sobrantes.
date = date.Date + new TimeSpan(date.TimeOfDay.Hours, date.TimeOfDay.Minutes, 0);