DateTime.ParseExact在c#中省略毫秒数?

我想在c#中将字符串转换为Datetime。 String datestring = 2013/03/18 10:54:07.679

  1. 我试过DateTime dt=DateTime.ParseExact(datestring, "yyyy/MM/dd HH:mm:ss.fff",null); 结果是{3/18/2013 10:54:07 AM}

  2. 我尝试了DateTime.TryParseExact(datestring,"yyyy/MM/dd HH:mm:ss.fff",CultureInfo.InvariantCulture,DateTimeStyles.None,out dttt); 结果是{3/18/2013 10:54:07 AM}

在上述两种情况下,它都省略了毫秒(679)。

如何通过保持毫秒来正确地将其转换为日期时间?

它不是在遗漏你只是检查调试器和调试器使用AM或PM显示它,它显示毫秒显示毫秒。

试试这个:

 DateTime dt=DateTime.ParseExact(datestring, "yyyy/MM/dd HH:mm:ss.fff",null); Console.WriteLine(dt.ToString("yyyy/MM/dd HH:mm:ss.fff")); 

编辑:从您的评论But I need the answer in Datetime instead of string

你已经有DateTime包括MilliSeconds只是调试器没有显示因为(正如Ant P评论中提到的)调试器调用ToString()方法的无参数重载,它显示没有MilliSeconds的DateTime