Puede haberse dado cuenta de que ciertas aplicaciones web (por ejemplo, ciertas partes de GMail) muestran fechas en un formato más legible que simplemente DD/MM/YYYY.Formatos de fecha legibles para humanos
Por ejemplo, si abro un elemento de correo del 23 (que pasa a ser hace 3 días en el momento de escribir, voy a conseguir lo siguiente: hace
23-DIC (3 días)
me gustaría implementar una lógica similar a esto en mi propia aplicación web.
Por ejemplo, cuando se trata de un objeto .NET TimeSpan, me gustaría convertirlo en texto, tales como el siguiente:
2 meses
3 días
¿Hay una biblioteca .NET capaz de hacer esto ya?
Si no, podría construir algo básico y de código abierto.
He hecho un comienzo básica aquí:
public static class TimeSpanHelpers
{
public static string ToHumanReadableString(
this TimeSpan timeSpan)
{
if (timeSpan.TotalDays > 30)
return (timeSpan.TotalDays/30) + " month(s)";
if (timeSpan.TotalDays > 7)
return (timeSpan.TotalDays/7) + " week(s)";
return (timeSpan.TotalDays) + " day(s)";
}
}
Ver: http://stackoverflow.com/questions/11/how-do-i-calculate-relative-time – CMS
Impresionante ... Sabía que alguien estaría preguntando esto, pero no entendía qué términos escribir en el cuadro de búsqueda. – Jonathan
Tengo un algoritmo simple para eso en mi blog que puede ampliar: http://www.robfe.com/2009/09/timeago-for-csharp/ No muy diferente al suyo, me temo ... –