ToLongTimeString Method

DateTime.ToLongTimeString Method ()


Converts the value of the current DateTime object to its equivalent long time string representation.

Namespace:   System
Assembly:  mscorlib (in mscorlib.dll)

public string ToLongTimeString()

Return Value

Type: System.String

A string that contains the long time string representation of the current DateTime object.

The value of the current DateTime object is formatted using the pattern defined by the DateTimeFormatInfo.LongTimePattern property associated with the current thread culture. The return value is identical to the value returned by specifying the "T" with the ToString(String) method.


The string returned by the ToLongTimeString method is culture-sensitive. It reflects the pattern defined by the LongTimePattern property of the current culture's DateTimeFormatInfo object. For example, for the en-US culture, the standard long time pattern is "h:mm:ss tt"; for the de-DE culture, it is "HH:mm:ss"; for the ja-JP culture, it is "H:mm:ss". The specific format string on a particular computer can also be customized so that it differs from the standard long time format string.

For more information about the current thread culture, see the CurrentCulture property. For more information about format characters, format patterns, and the output they produce, see the Formatting Types in the .NET Framework topic. For more information about changing the format pattern associated with a format character, see the DateTimeFormatInfo class.

The following example demonstrates the ToLongTimeString method.

using System;
using System.Reflection;

public class MyClass1
    private int x=0;
    public int MyMethod()
        return x;

public class MyClass2
    public static void Main()
        MyClass1 myClass1 = new MyClass1();

        // Get the RuntimeTypeHandle from an object.
        RuntimeTypeHandle myRTHFromObject = Type.GetTypeHandle(myClass1);
        // Get the RuntimeTypeHandle from a type.
        RuntimeTypeHandle myRTHFromType = typeof(MyClass1).TypeHandle;

        Console.WriteLine("\nmyRTHFromObject.Value:  {0}", myRTHFromObject.Value);
        Console.WriteLine("myRTHFromObject.GetType():  {0}", myRTHFromObject.GetType());
        Console.WriteLine("Get the type back from the handle...");
        Console.WriteLine("Type.GetTypeFromHandle(myRTHFromObject):  {0}", 

        Console.WriteLine("\nmyRTHFromObject.Equals(myRTHFromType):  {0}", 

        Console.WriteLine("\nmyRTHFromType.Value:  {0}", myRTHFromType.Value);
        Console.WriteLine("myRTHFromType.GetType():  {0}", myRTHFromType.GetType());
        Console.WriteLine("Get the type back from the handle...");
        Console.WriteLine("Type.GetTypeFromHandle(myRTHFromType):  {0}", 

/* This code example produces output similar to the following:

myRTHFromObject.Value:  799464
myRTHFromObject.GetType():  System.RuntimeTypeHandle
Get the type back from the handle...
Type.GetTypeFromHandle(myRTHFromObject):  MyClass1

myRTHFromObject.Equals(myRTHFromType):  True

myRTHFromType.Value:  799464
myRTHFromType.GetType():  System.RuntimeTypeHandle
Get the type back from the handle...
Type.GetTypeFromHandle(myRTHFromType):  MyClass1

.NET Framework
Available since 1.1
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Return to top
© 2015 Microsoft