Buenas
Estoy empezando con el C#.
Y estaba comprobando como utililzar algunos métodos para comparar horas....
Quisiera hacer algo así:
Console.WriteLine(DateTime.Compare(DateTime.Now.TimeOfDay,15:30));
pero ese 15:30 da error, ¿Cómo ser lo pongo?
(eso sólo era un ejemplo muy simple para ver que resultado da)
He intentado buscar ejemplos de manipulación de ese tipo de datos pero no encuentro
Gracias
Prueba de la siguiente forma:
int nHoraInicial = Convert.ToInt32(DateTime.Now.Date.ToString("HHmm"));
int nHoraFinal = 1530;
if(nHoraInicial == nHoraFinal )
{}
else
{}
;D Bueno espero q les agrede mi receta yo lo hice asi para comparar dos fecha
las mismas estan definidas como cadenas tienen el formato 00:00.
;D
/// <summary>
/// Compara dos fechas (formato fecha 00:00) retorna los siguientes valores:
/// <br>0 igual</br>
/// <br>1 menor</br>
/// <br>2 mayor</br>
/// </summary>
/// <param name="fecha">Fecha a comparar con fecha1</param>
/// <param name="fecha1">Fecha Con la que se compara</param>
/// <returns></returns>
static public int comparar_fechas(string fecha , string fecha1)
{
int hh = Convert.ToInt32(fecha.Substring(0, 2));
int mm = Convert.ToInt32(fecha.Substring(3, 2));
int hh1 = Convert.ToInt32(fecha1.Substring(0, 2));
int mm1 = Convert.ToInt32(fecha1.Substring(3, 2));
if (hh == hh1)
{
if (mm == mm1) return 0;
else {
if (mm > mm1) return 2;
else return 1;
}
}
else {
if (hh > hh1) return 2;
else return 1;
}
}
int n=comparar_fechas("07:45", "07:49"); // devuelve 1 07:45 < 07:49
n = comparar_fechas("09:45", "07:49"); //devuelve 2 09:45 > 07:49
las modificaciones se pueden realizar el formato 00:00:00 aumentando las definiciones int ss; luego extraer el segundo y realizar la misma comparacion dentro el if que compara los minutos. y listo ;D >:D :laugh:
PAra cualquier sugerencia escriban a mi email :Djpablo_eguivarr@hotmail.com
Gracias
Ya no hace falta que contesteis más, ya he hecho pruebas varias.
El problema es que mezclaba cosas de tipo TimeSpan con DateTime