11/11/2011 15:04 VALID ANYTHING OUTSIDE OF THIS IS FORMAT INVALID 11/11/11 12:04 INVALID 11/11/2011 15:0 INVALID
我在考虑最小字符为16 我还可以做些什么。还有其他解决方案吗?
答案 0 :(得分:4)
您应该查看TryParseExact并查看是否可以解析日期,这是根据here改编的。
string dateString = "11/11/2011 15:04"; // <-- Valid
string format = "dd/MM/yyyy HH:mm";
DateTime dateTime;
if (DateTime.TryParseExact(dateString, format, CultureInfo.InvariantCulture, DateTimeStyles.None, out dateTime))
{
Console.WriteLine(dateTime);
}
以上使用dd和MM,这意味着它需要两位数的日期和月份。如果你只想要一个数字,只需使用单数d / M.
答案 1 :(得分:3)
我会用:
DateTime parsedValue = DateTime.ParseExact(stringOfDateTime, "MM/dd/yyyy HH:mm")
(虽然我不知道你的月份或日期是否因为你们两个都选择了11而来)