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

时间:2016-05-22 05:36:00

标签: c# .net datetime hour

如何以DateTime格式将12小时格式转换为24小时格式。

我已经尝试将DateTime转换为字符串(24小时格式)并将其转换回Datetime格式,但它无效。

3 个答案:

答案 0 :(得分: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");
    }
}

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

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"

答案 1 :(得分:6)

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 

答案 2 :(得分:0)

检查以下代码。

string time = Console.ReadLine();
DateTime dt = Convert.ToDateTime(time);
String militaryDate = dt.ToString("HH:mm:sstt");
Console.Write(militaryDate);