DateTime.ParseExact(dateVar, "yyyyMMdd", System.Globalization.CultureInfo.CurrentCulture, System.Globalization.DateTimeStyles.None)只有年月不是有效的日期,你可以默认为1号,把字符串设为yyyyMM01

解决方案 »

  1.   

    Console.WriteLine(DateTime.ParseExact("2003-01", "yyyy-MM", null));
      

  2.   

    DateTimeFormatInfo format = new DateTimeFormatInfo();
    Console.WriteLine ( DateTime.Parse(" 2001/ 4/    4 12 : 34 : 34 pm",format,DateTimeStyles.AllowInnerWhite).ToString("yyyy-MM-dd HH:mm:ss"));Console.WriteLine ( DateTime.Parse(" 2001/ 4/    4 12 : 34 : 34 pm",format,DateTimeStyles.AllowWhiteSpaces).ToString("yyyy-MM-dd HH:mm:ss"));Console.WriteLine ( DateTime.Parse(" 2001/3/31",format,DateTimeStyles.AllowLeadingWhite).ToString("yyyy-MM-dd HH:mm:ss"));Console.WriteLine ( DateTime.Parse("12:00:45",format,DateTimeStyles.NoCurrentDateDefault).ToString("yyyy-MM-dd HH:mm:ss"));
      

  3.   

    To wangier(冷眉) :
    首先非常感谢你的答复,不过请仔细看一下我的要求:"DateTime.Parse分析一个只有**年月**的字符串",另外看一下我对你的回复的回答,以及xixigongzhu(夕夕公主) 得分的那个回答。