【问题标题】:Parse date format to DateTime c#将日期格式解析为 DateTime c#
【发布时间】:2014-01-22 10:05:18
【问题描述】:

如何解析这个字符串:

 "\"2014-01-02T23:00:00.000Z\"" to DateTime 

这不起作用:

    DateTime? dateTimeFormat= string.IsNullOrEmpty(inputString) ?? (DateTime?)null : DateTime.Parse(inputString);

【问题讨论】:

    标签: c# asp.net datetime


    【解决方案1】:

    您需要为DateTime.ParseExact 方法指定确切的日期时间格式:

    string input = "\"2014-01-02T23:00:00.000Z\"";
    var date = DateTime.ParseExact(input, "'\"'yyyy-MM-dd'T'HH:mm:ss.fff'Z\"'", null);
    

    提供的格式说明:

    '\"'           - match first "
    yyyy-MM-dd     - match 2014-01-02
    'T'            - match T
    HH:mm:ss.fff   - match 23:00:00.000
    'Z\"'          - match Z"
    

    【讨论】:

      【解决方案2】:

      这会有所帮助

      string test = "2014-01-02T23:00:00.000Z";
      DateTime dt = Convert.ToDateTime(test);
      

      【讨论】:

        【解决方案3】:
        DateTime.ParseExact(your_date.ToString(), "yyyy-MM-ddTHH:mm:ssZ", null)
        

        【讨论】:

          【解决方案4】:

          重新格式化字符串以放入正确的格式,然后解析

          string =  "\"2014-01-02T23:00:00.000Z\"";
          string = substring(3,10) + " " + substring(14,8); //"2014-01-02 23:00:00"
          time = DateTime.Parse(string);
          

          【讨论】:

            【解决方案5】:

            试试这个:

            DateTime.ParseExact("2014-01-02T23:00:00.000Z" , "yyyy-MM-DDThh:mm:ssZ",CultureInfo.InvariantCulture);
            

            也许这可行。

            添加- 使用 System.Globalization;

            【讨论】:

              【解决方案6】:

              我已经尝试了这个答案中的几乎所有方法/代码,但没有一个对我有用。虽然,使用这个问题的先前答案的部分代码,我做到了这一点,它对我来说非常有效。

              var d = "2019-01-11T05:00:00.000Z"; //Date
              
              int year = Convert.ToInt32(d.Substring(0, 4));
              int month = Convert.ToInt32(d.Substring(5, 2));
              int day = Convert.ToInt32(d.Substring(8, 2));
              
              var time = new DateTime(year, month, day);
              

              我不关心时间。如果你愿意,你可以添加它。

              【讨论】:

              • 欢迎来到 SO!当您针对一个包含多个回复的问题发布答案时,请展示您的优点。
              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2018-12-20
              • 1970-01-01
              • 1970-01-01
              • 2013-11-21
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多