日期时间格式-无法识别一个数字日期
本文关键字:日期 数字 一个 识别 时间 格式 | 更新日期: 2023-09-27 18:16:15
我需要读取以下格式的字符串:"6102015"(意思是2015年10月6日),并将其转换为日期时间对象。
我尝试了以下代码,但没有成功:
DateTime.ParseExact("6102015", "dMyyyy", CultureInfo.CurrentCulture);
但是当我使用带有额外0的日期字符串测试代码时,它工作了。
DateTime.ParseExact("06102015", "dMyyyy", CultureInfo.CurrentCulture); // works correctly
是否有一种方法可以读取此日期格式而无需添加0?
事先感谢您的帮助。
是否有一种方法可以读取此日期格式而无需添加0?
在我看来,加一个0是你最不担心的。这个只用一行代码。
假设您有数据库的副本或您可以有效地修改的东西,我将:
- 创建日期/时间类型的字段,或者如果必须使用字符串,则使用ISO-8601格式(yyyy-MM-dd)
- 解析所有已经是8个字符的值
- 通过插入两个0解析所有6个字符的值(因此
abcccc
变成0a0bcccc
) - 对于每个剩余值,形式为
abcyyyy
:- 尝试解析为
0abcyyyy
- 尝试解析为
ab0cyyyy
- 如果只有一个解析工作,将结果存储在新列 中
- 尝试解析为
- 现在查看所有剩余的行(即您没有填充"已知良好"值的行)
- 您可能能够使用其他数据(例如插入顺序)来确定哪个是"正确的"解析…
- 你可能没有-在这种情况下,你需要决定怎么做