首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么这种解析DateTime的尝试会失败?

问为什么这种解析DateTime的尝试会失败?
EN

Stack Overflow用户
提问于 2014-12-04 13:13:34
回答 2查看 81关注 0票数 0

这一点:

bool ret = DateTime.TryParse("Sunday 11 November", out date);

是否无法解析日期字符串?为什么?

我知道字符串是一个不完整的日期,但是为什么框架不能处理它呢?框架总是试图返回合法的日期吗?因为如果是这样的话,这就可以解释了(2014年11月11日星期日不是一个有效的日期)

EN

回答 2

Stack Overflow用户

发布于 2014-12-04 13:20:32

这很容易验证,只需将日期更改为有效日期(11月9日星期日),然后猜猜发生了什么,它就可以工作了。您还会看到年份设置为2014年。

因此,是的,如果日期无效,则解析将失败。

票数 1
EN

Stack Overflow用户

发布于 2014-12-04 13:20:52

在DateTime.TryParse的documentation中,它声明了以下内容:

如果可能,此方法会尝试忽略无法识别的数据,并且会使用当前日期填充缺少的月、日和年信息。

在您的示例中,年份缺失,因此它将插入当前年份,给出2014年11月11日星期日。我假设它是无效的,因为11月11日不是星期天。文档中确实包含了包含日期名称的示例。

看到这个问题很有趣,因为TryParse的这个非直观的功能(填充缺失的部分)就在今天咬了我办公室里的一个人。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27286753

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档