【问题标题】:How to convert string with a T and Z to DateTime如何将带有 T 和 Z 的字符串转换为 DateTime
【发布时间】:2015-08-08 13:19:07
【问题描述】:

我有以下字符串:

20150521T205510Z

如何将其转换为 DateTime?我需要先解析日期然后再解析时间吗?或者有没有办法将它插入 DateTime.Parse() 以获得正确的值?

【问题讨论】:

    标签: c# .net datetime


    【解决方案1】:

    使用函数 DateTime.ParseExact。

    附加信息: https://msdn.microsoft.com/en-us/library/w2sa9yss%28v=vs.110%29.aspx

    【讨论】:

    • 我在 MSDN 页面中没有看到如何跳过 T 和 Z。
    • result = DateTime.ParseExact(yourDateString, "yyyyMMdd'T'HHmmss'Z'", CultureInfo.InvariantCulture);
    【解决方案2】:

    你可以试试这样的:

    var dateString = "20150521T205510Z";
    
    var date = DateTime.ParseExact(dateString,
                       "yyyyMMdd'T'HHmmss'Z'",
                       CultureInfo.InvariantCulture);
    

    我参考了来自DateTime.Parse("2012-09-30T23:00:00.0000000Z") always converts to DateTimeKind.Local的答案

    【讨论】:

    • 感谢这是有道理的。我不知道有一种内置方法可以处理包含其他字符的日期。
    猜你喜欢
    • 2014-11-07
    • 2021-10-08
    • 2021-03-31
    • 2018-10-12
    • 2012-02-17
    • 2013-07-15
    • 2011-08-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多