【发布时间】:2012-09-21 10:18:25
【问题描述】:
我有一个 WPF 窗口,其中包含一个文本框,用户可以在其中输入他想要的任何格式的日期,我必须在 datetime 变量中解析它,够简单吗?我尝试了各种格式,其中一些适用于 datatime.parse 有些不适用,那么我应该如何处理这些字符串?
一些例如格式(年份不是强制性的):
- 9 月 21 日
- 9 月 21 日
- 9 月 21 日
- 9 月 21 日
- 9 月 21 日
- 21/09
- 21-09
只要是正确可读的日期,用户喜欢的任何内容都可以,任何人都可以帮助我吗?
更新:基于 cmets,我正在修改输入字符串格式....如果用户可以以任何方式输入,但总是日后月后年(可选)... ..这可以管理吗??
【问题讨论】:
-
11/12 -> 是 12 月 11 日还是 11 月 12 日?
-
如果他们输入
04/03会怎样?是在三月还是四月?根据您的21/09和09/21示例,either 可能是正确的。计算机不擅长猜谜游戏。给用户一个日期选择器,确保你得到用户意图的东西。 -
只要你需要支持“任何格式”,你就不能这样做,因为你的代码必须读心。如果您可以将其缩小到一组支持的格式,那么就可以完成。你明白“正确的可读日期”是一个相当主观的事情,对吧?另外,其他国家的用户呢?
-
你最好有一个日期时间选择器:)
标签: c# datetime string-to-datetime