Posteado por: edeortuzar | 27/11/2013

Diferencia entre fechas (meses, días) en C#


Para sacar la diferencia entre dos fechas tenes que hacer algunas funciones. Por ejemplo para calcular la diferencia de meses entre dos fechas debemos:


public int CalcularMesesDeDiferencia(DateTime fechaDesde, DateTime fechaHasta)
{
     return Math.Abs((fechaDesde.Month - fechaHasta.Month) + 12 * (fechaDesde.Year - fechaHasta.Year));
}

De esta manera se obtiene el valor positivo, si deseamos obtener el valor con negativo en caso que corresponda debemos:


public int CalcularMesesDeDiferencia(DateTime fechaDesde, DateTime fechaHasta)
{
     return (fechaDesde.Month - fechaHasta.Month) + 12 * (fechaDesde.Year - fechaHasta.Year);
}

Si deseamos saber la diferencia en días entre dos fechas debemos:


public double CalcularDiasDeDiferencia(DateTime primerFecha, DateTime segundaFecha)
{
    TimeSpan diferencia;
    diferencia = primerFecha - segundaFecha;

    return diferencia.Days;
}

Espero que les sirva.

Saludos.

Anuncios

Responses

  1. Esto no sirve no es verdad porque no todos los meses son de 30 dias y también hay que tener en cuenta los años bisiestos.

    • Hola, ¿me podrás pasar los ejemplos con los que no te sirvió? Porque hice pruebas con años bisiestos, por ejemplo el 2012 y funcionó correctamente. Además de que cuenta los meses como corresponde según la cantidad de días que tiene.

  2. Es verdad no me funciono, puse fecha desde: 05/11/2015 y fechaHasta: 01/12/2015 y me dijo que era un mes de diferencia y no es asi ….

    • Es verdad en ese caso. ¿Cuál tendría que ser el resultado para vos para tu ejemplo?


Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

Categorías

A %d blogueros les gusta esto: