字符串在ParseExact中未被识别为有效的DateTime

iam*_*mCR 1 .net vb.net datetime

当我尝试将其转换DateTime为特定格式时,我收到此错误.

DateTime.Now= 6/5/2013 2:29:21 PM

DateTime.ParseExact(CStr(DateTime.Now), "MM/dd/yyyy",  CultureInfo.CurrentCulture)
Run Code Online (Sandbox Code Playgroud)

错误:

String was not recognized as a valid DateTime 
Run Code Online (Sandbox Code Playgroud)

为什么我得到这个?

Sea*_*rey 7

除了将DateTime转换为字符串然后再转换回来之外,DateTime格式与之完全不匹配.

DateTime.ParseExact将字符串解析为DateTime对象,并且您提供的格式必须完全匹配.你说这DateTime.Now看起来是6/5/2013 2:29:21 PM正确的格式M/d/yyyy h:mm:ss tt.有关自定义日期格式的详细信息,请查看MSDN.

我打算说出来,通过查看你的代码,我认为你正在尝试将日期格式化为日期,这可以使用ToStringDateTime上的方法来实现:

string todaysDate = DateTime.Now.ToString("MM/dd/yyyy"); // todaysDate will contain "06/05/2013"
Run Code Online (Sandbox Code Playgroud)