Saltar al contenido

Convierta TimeSpan del formato “hh: mm: ss” a “hh: mm”

Te damos la bienvenida a nuestra página, en este sitio vas a hallar la solucíon que estabas buscando.

Solución:

Debe convertir sus datos a TimeSpan y luego usar el formato:"hh:mm"

string test ="08:00:00";
TimeSpan ts = TimeSpan.Parse(test);
Console.Write(ts.ToString(@"hh:mm"));

En tu caso:

var test = dataRow.Field("fstart").ToString(@"hh:mm"));

Recuerda escapar del colon :

Puede ver: Cadenas de formato TimeSpan personalizadas

No hay necesidad de convertir de hh.mm.ss a hh.mm. TimeSpan se almacena como un número de tics (1 tic == 100 nanosegundos) y no tiene un formato inherente. Lo que tienes que hacer es convertir el TimeSpan en un humano legible string! Esto implica formatear. Si no especifica un formato explícitamente, se utilizará un formato predeterminado. En este caso hh.mm.ss.

string formatted = timespan.ToString(@"hh.mm");

Nota: Esta sobrecarga de ToString existe desde .NET 4.0. ¡No es compatible con los símbolos separadores de marcador de posición de fecha y hora! Por lo tanto, debe incluirlos como (escapados) string literales.

La forma habitual de formatear cadenas parece no funcionar por alguna extraña razón (probado con .NET 3.5). (No importa si escapa o no del símbolo separador):

var timespan = TimeSpan.FromSeconds(1234);
string formatted = String.Format("0:hh.mm", timespan); // ==> 00:20:34

Sin embargo, puede construir el string como esto

string formatted =
    String.Format("0:00.1:00", Math.Floor(timespan.TotalHours), timespan.Minutes);

o comenzando con VS2015 / C# 6.0, usando string interpolación:

string formatted = $"Math.Floor(timespan.TotalHours):00.timespan.Minutes:00";

Puede utilizar los métodos TimeSpan:

ToString("hh':'mm")
// or
ToString(@"hh:mm")

Consulte también todos los formatos disponibles aquí http://msdn.microsoft.com/en-us/library/8kb3ddd4.aspx

Comentarios y valoraciones del tutorial

Si te apasiona este mundo, eres capaz de dejar un enunciado acerca de qué te ha gustado de esta crónica.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *