【问题标题】:DateTime c# parsing日期时间 c# 解析
【发布时间】:2010-05-12 16:21:20
【问题描述】:

我尝试解析 DateTime.TryParse("30-05-2010"),它会抛出异常,因为它接受 MMddyyyy,并且我需要 ddMMyyyy 格式。如何更改 TryParse 格式?

谢谢,

丹尼

【问题讨论】:

    标签: c# datetime parsing


    【解决方案1】:

    您可以改用DateTime.TryParseExact 方法,它允许您指定字符串的确切格式

    【讨论】:

    • 如果有任何偏差(例如“30-5-2010”)是不可接受的,这是最好的。
    【解决方案2】:

    如果您因本地使用而进行调整,请尝试以下操作:

    bool success = DateTime.TryParse("30-05-2010", out dt);
    
    Console.Write(success); // false
    
    // use French rules...
    success = DateTime.TryParse("30-05-2010", new CultureInfo("fr-FR"),
                  System.Globalization.DateTimeStyles.AssumeLocal, out dt);
    
    Console.Write(success); // true
    

    【讨论】:

      【解决方案3】:

      也许您可以将重载与格式提供程序一起使用。

      DateTime.TryParse("30-05-2010", <IFormatProvider>)
      

      不确定如何正确实现它,无法在这里测试任何东西,但这里有更多关于 iformatprovider 的信息: http://msdn.microsoft.com/en-us/library/system.iformatprovider.aspx

      【讨论】:

        猜你喜欢
        • 2016-05-22
        • 1970-01-01
        • 2013-03-27
        • 1970-01-01
        • 2014-06-11
        • 1970-01-01
        • 1970-01-01
        • 2014-01-29
        相关资源
        最近更新 更多