我正在将字符串转换为DateTime并让字符串像这样进入:
string dateTimeBeforeDayTen = '2/05/2016';
string dateTimeBeforeAfterTen = '12/05/2016';
现在,如果我正在解析dateTimeBeforeAfterTen,我知道我可以使用:
DateTime myDateTime;
DateTime.TryParseExact(dateTimeBeforeAfterTen, "dd/MM/yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None, out myDateTime);
但如果我想解析其中任何一个,我该怎么办?我知道我能做到:
DateTime myDateTime;
if(!DateTime.TryParseExact(dateTimeBeforeAfterTen, "dd/MM/yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None, out myDateTime));
DateTime.TryParseExact(dateTimeBeforeAfterTen, "d/MM/yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None, out myDateTime);
但有更好的方法吗?我将DateTime格式存储在数据库中,并希望将其保存为单个字符串。
答案 0 :(得分:2)
单个" d"将工作一到两天。所以只需使用" d / MM / yyyy"。
" d"
该月的某一天,从1到31。
2009-06-01T13:45:30 - > 1
2009-06-15T13:45:30 - > 15
这有效:
string dateTimeBeforeDayTen = "2/05/2016";
string dateTimeBeforeAfterTen = "12/05/2016";
DateTime myDateTime, myDateTime2;
DateTime.TryParseExact(dateTimeBeforeDayTen, "d/MM/yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None, out myDateTime);
DateTime.TryParseExact(dateTimeBeforeAfterTen, "d/MM/yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None, out myDateTime2);