日期时间格式问题:字符串未被识别为有效的DateTime

Pri*_*iya 9 c# asp.net datetime

我想在C#中将输入字符串格式化为MM/dd/yyyy hh:mm:ss格式.
输入字符串的格式MM/dd/yyyy hh:mm:ss
为例如:"04/30/2013 23:00"

我试过Convert.ToDateTime()功能,但它认为4是日期,3是月,这不是我想要的.实际上月是04,日期是03.

DateTime.ParseExact()也试过功能,但是得到了Exception.

我收到错误:

字符串未被识别为有效的DateTime.

Bot*_*000 13

您的日期时间字符串不包含任何秒数.您需要以您的格式反映(删除:ss).
此外,您需要指定H而不是h如果您使用24小时:

DateTime.ParseExact("04/30/2013 23:00", "MM/dd/yyyy HH:mm", CultureInfo.InvariantCulture)
Run Code Online (Sandbox Code Playgroud)

浏览此处获取更多信息:

自定义日期和时间格式字符串


Son*_*nül 5

你可以使用DateTime.ParseExact()方法.

使用指定的格式和特定​​于区域性的格式信息将指定的日期和时间字符串表示形式转换为其DateTime等效形式.字符串表示的格式必须与指定的格式完全匹配.

DateTime date = DateTime.ParseExact("04/30/2013 23:00", 
                                    "MM/dd/yyyy HH:mm", 
                                    CultureInfo.InvariantCulture);
Run Code Online (Sandbox Code Playgroud)

这是一个DEMO.

hh从01到12为12 HH小时制,从00到23为24小时制.

有关更多信息,请检查 Custom Date and Time Format Strings