繁体   English   中英

DateTime.ParseExact - 英国日期和时间

[英]DateTime.ParseExact - UK date and time

我正在尝试解析以下英国格式DateTime字符串: 24/01/2013 22:00

但是,我不断收到此错误:

字符串未被识别为有效的DateTime。

CultureInfo.CurrentCulture返回“ en-GB ”,这是正确的

这是我的代码

    [TestMethod]
    public void TestDateTimeParse()
    {
        DateTime tester = DateTime.ParseExact("24/01/2013 22:00", "d/M/yyyy hh:mm", CultureInfo.CurrentCulture);

        int hours = tester.Hour;
        int minutes = tester.Minute;

        Assert.IsTrue(true);
    }

hh是12个小时的时钟。 你应该使用HH代替。

DateTime.ParseExact("24/01/2013 22:00", 
                    "d/M/yyyy HH:mm", // <-- here
                    CultureInfo.CurrentCulture)

"hh"用于小时,使用从12到12的12小时制

"HH"适用于小时,使用00至23的24小时制

尝试这样;

public static void Main(string[] args)
{
    DateTime tester = DateTime.ParseExact("24/01/2013 22:00", "dd/MM/yyyy HH:mm", CultureInfo.InvariantCulture);
}

这是一个DEMO

您还可以从MSDN查看Custom Date and Time Format Strings

你的格式错了,试试这个:

DateTime tester = DateTime.ParseExact("24/01/2013 22:00", "dd/MM/yyyy HH:mm", CultureInfo.CurrentCulture);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM