我有一个json字符串,其中包含datetime的值和一个如下所示的解析机制:
if (DateTime.TryParseExact(TheUserTimeString, "M.d.yyyy.HH.mm", CultureInfo.InvariantCulture, DateTimeStyles.None, out TheUserTime))
{
TheObject.UserDateTime = TheUserTime;
}
在客户端上生成字符串TheUserTimeString。它可以是12.20.2011.13.21
并且代码工作正常,但是当12.20.2011.13.2
时代码中断,因为分钟是一位数。当月份也是一位数时......谁知道。
重写此解析代码的更好方法是每次都正确解析字符串。
感谢您的建议。
答案 0 :(得分:3)
使用字符串"M.d.yyyy.HH.m"
,单个m
表示不带前导0的分钟。Source。
答案 1 :(得分:1)
您的DateTime格式字符串只需:"M.d.yyyy.H.m"
这允许将月,日,小时和分钟表示为单个数字值。
有关详细信息,请参阅here for the MSDN page记录此字符串的有效格式。