c#

Jak sformatować TimeSpan

Na taki dzisiaj problem natrafiłem.
Chcę wyświetlić z TimeSpana tylko godzine i minuty w formacie „05:30”.

Próbuję zatem:

x.ToString("hh:mm")

i dostaję wyjątek:
Nieprawidłowy format ciągu wejściowego. mscorlib w System.Globalization.TimeSpanFormat.FormatCustomized(TimeSpan value, String format, DateTimeFormatInfo dtfi) w System.Globalization.TimeSpanFormat.Format(TimeSpan value, String format, IFormatProvider formatProvider)

Uuuuu. Zatem może coś pomyliłem i próbuję: „HH:mm”, „hh:MM”, ale to głupota.
Patrzę w internet: https://stackoverflow.com/questions/12673194/convert-timespan-from-format-hhmmss-to-hhmm

I wszystko jasne. Najważniejsze w tym wpisie jest informacja o tym, że metoda ToString() dla TimeSpan nie obsługuje separatorów i trzeba je „wyeskejpować” samemu.

A zatem:

x.ToString("hh\:mm")

będzie właściwym rozwiązaniem problemu.
Miłego dnia życzę.

Leave a Reply

Your email address will not be published. Required fields are marked *