计算用于日期时间格式化的字符串格式
-
23-09-2019 - |
题
我有一个代表 DataTime 值的字符串,我想了解创建该字符串时使用的字符串格式。
例如
- 鉴于“2010 年 1 月 27 日星期三”,我期望“dddd dd MMM yyyy”
- 鉴于“2010 01 27”我期望“yyyy MM dd”
假设该日期接近 DateTime.Now 并且与 CurrentCulture 相关。鉴于我们有 en-GB 文化
- 鉴于“01 01 2010”我期望“dd MM yyyy”
有没有一种简单的方法可以做到这一点?
解决方案
您可能分裂的空白得到一个字符串数组 那么你可以测试该数组中的元素针对已知值来尝试猜测格式
e.g。如果你搜索“星期三”,如果你发现它假定“DDDD”
如果一个四位数字假定YYYY
日和月可能是一个问题,你可以测试> 12天但这是非常糟糕的。
,也许你可以对一部开拓创新和试验对所解析的日期的格式化(使用infered格式)版本的相等
使用空白分裂然后DateTime.Parse推断格式不隶属于 StackOverflow