在C#中将12小时格式转换为24小时格式

wma*_*izi 3 .net c# datetime hour

如何将12小时格式转换为格式的24小时DateTime格式.

我已经尝试将转换DateTime为字符串(24小时格式)并将其转换回Datetime格式但它无法正常工作.

Siy*_*mdi 8

使用扩展方法也是个好主意.

public static class MyExtensionClass
{
    public static string ToFormat12h(this DateTime dt)
    {
        return dt.ToString("yyyy/MM/dd, hh:mm:ss tt");
    }

    public static string ToFormat24h(this DateTime dt)
    {
        return dt.ToString("yyyy/MM/dd, HH:mm:ss");
    }
}
Run Code Online (Sandbox Code Playgroud)

然后您可以使用以下两种方法:

var dtNow = DateTime.Now;

var h12Format = dtNow.ToFormat12h();    // "2016/05/22, 10:28:00 PM"
var h24Format = dtNow.ToFormat24h();    // "2016/05/22, 22:28:00"
Run Code Online (Sandbox Code Playgroud)


Rah*_*Jha 7

DateTime dt = new DateTime(2008, 3, 9, 16, 5, 7, 123); 

dt.ToString("dd/MM/yyyy hh:mm:ss tt"); //12 HOUR FORMAT
dt.ToString("dd/MM/yyyy HH:mm:ss");    //24 HOUR FORMAT 
Run Code Online (Sandbox Code Playgroud)