代码之家  ›  专栏  ›  技术社区  ›  JoshL

将字符串转换为.net中的日期

  •  8
  • JoshL  · 技术社区  · 16 年前

    6 回复  |  直到 16 年前
        1
  •  30
  •   Kolappan N t-clausen.dk    4 年前
    string[] formats = {"yyyyMMdd", "MM/dd/yy"};
    var Result = DateTime.ParseExact(input, formats, CultureInfo.CurrentCulture, DateTimeStyles.None);
    

    DateTime result;
    string[] formats = {"yyyyMMdd", "MM/dd/yy"};
    DateTime.TryParseExact(input, formats, CultureInfo.CurrentCulture, DateTimeStyles.None, out result);
    

    有关详细信息,请参阅MSDN文档 ParseExact TryParseExact .

        2
  •  4
  •   stefano m    16 年前

    方法,下面是文档: http://msdn.microsoft.com/en-us/library/ms131044.aspx

    DateTime outDt;
    bool blnYYYMMDD = 
         DateTime.TryParseExact(yourString,"yyyyMMdd"
                                ,CultureInfo.CurrentCulture,DateTimeStyles.None
                                , out outDt);
    

    我希望我能帮助你。

        3
  •  4
  •   Steven A. Lowe    16 年前
        4
  •  0
  •   Sara Chipps    16 年前

    您还可以执行Convert.ToDateTime

    我不确定这两种方法的优点

        5
  •  0
  •   Josh Stodola    16 年前

    如果失败,使用TryParse不会引发异常。此外,TryParse将返回True/False,表示转换成功。

    当做

        6
  •  0
  •   Skippy    16 年前

    DateTime output;
    string input = "09/23/2008";
    if (DateTime.TryParseExact(input,"MM/dd/yy", DateTimeFormatInfo.InvariantInfo, DateTimeStyles.None, out output) || DateTime.TryParseExact(input,"yyyyMMdd", DateTimeFormatInfo.InvariantInfo, DateTimeStyles.None, out output))
    {
        //handle valid date
    }
    else
    {
        //handle invalid date
    }