Short Time ("t") Format Specifier in C#

The Short Time format specifier ("t") in C# is a standard date and time format specifier that displays only the time portion of a DateTime in a short format. It excludes the date and seconds, showing only hours and minutes along with the AM/PM designator for 12-hour formats.

The "t" format specifier is defined by the DateTimeFormatInfo.ShortTimePattern property of the current culture. Different cultures may display the time differently based on their regional settings.

Syntax

Following is the syntax for using the short time format specifier −

DateTime.ToString("t")
DateTime.ToString("t", CultureInfo)

The underlying custom format pattern varies by culture but typically follows these patterns −

h:mm tt    // 12-hour format with AM/PM (en-US)
HH:mm      // 24-hour format (many European cultures)

Using Short Time Format with Default Culture

Example

using System;

class Demo {
   static void Main() {
      DateTime date = new DateTime(2018, 5, 4, 10, 12, 10);
      Console.WriteLine("Original DateTime: " + date);
      Console.WriteLine("Short Time Format: " + date.ToString("t"));
      
      DateTime eveningTime = new DateTime(2018, 5, 4, 22, 35, 45);
      Console.WriteLine("Evening Time: " + eveningTime.ToString("t"));
   }
}

The output of the above code is −

Original DateTime: 5/4/2018 10:12:10 AM
Short Time Format: 10:12 AM
Evening Time: 10:35 PM

Using Short Time Format with Different Cultures

Example

using System;
using System.Globalization;

class Demo {
   static void Main() {
      DateTime date = new DateTime(2018, 5, 4, 14, 12, 10);
      
      Console.WriteLine("US Culture: " + 
         date.ToString("t", CultureInfo.CreateSpecificCulture("en-US")));
      Console.WriteLine("UK Culture: " + 
         date.ToString("t", CultureInfo.CreateSpecificCulture("en-GB")));
      Console.WriteLine("German Culture: " + 
         date.ToString("t", CultureInfo.CreateSpecificCulture("de-DE")));
      Console.WriteLine("French Culture: " + 
         date.ToString("t", CultureInfo.CreateSpecificCulture("fr-FR")));
   }
}

The output of the above code is −

US Culture: 2:12 PM
UK Culture: 14:12
German Culture: 14:12
French Culture: 14:12

Comparison with Other Time Format Specifiers

Format Specifier Description Example Output (en-US)
"t" Short time pattern 2:12 PM
"T" Long time pattern 2:12:10 PM
"HH:mm" Custom 24-hour format 14:12
"h:mm tt" Custom 12-hour format 2:12 PM

Retrieving the Short Time Pattern

Example

using System;
using System.Globalization;

class Demo {
   static void Main() {
      CultureInfo[] cultures = {
         CultureInfo.CreateSpecificCulture("en-US"),
         CultureInfo.CreateSpecificCulture("en-GB"),
         CultureInfo.CreateSpecificCulture("de-DE")
      };
      
      foreach (CultureInfo culture in cultures) {
         Console.WriteLine($"{culture.Name}: {culture.DateTimeFormat.ShortTimePattern}");
      }
   }
}

The output of the above code is −

en-US: h:mm tt
en-GB: HH:mm
de-DE: HH:mm

Conclusion

The short time format specifier ("t") provides a culture-sensitive way to display time without seconds or date information. It automatically adapts to the current culture's time format preferences, making it ideal for displaying concise time information in international applications.

Updated on: 2026-03-17T07:04:35+05:30

521 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements