如果我有一个奇怪的格式,如YYYY##MM##DD HH**M**SS
日期时间字符串,我如何创建一个新的日期时间对象基础?我已阅读了有关datetimeformatinfoclass的一些信息,但不知道如何使其工作。从奇怪的格式解析日期时间在C#中
14
A
回答
26
您可以使用DateTime.ParseExact,或DateTime.TryParseExact为这你就不信心数据例如:
using System;
class Test
{
static void Main()
{
string formatString = "yyyy'##'MM'##'dd' 'HH'*'mm'*'ss";
string sampleData = "2010##02##10 07*22*15";
Console.WriteLine(DateTime.ParseExact(sampleData,
formatString,
null));
}
}
格式字符串的引号不是绝对必要的 - 这会工作。太:
string formatString = "yyyy##MM##dd HH*mm*ss";
但是,使用引号意味着你是明确了引号之间的字符被字面上的使用,而不是理解为模式字符 - 因此,如果你改变了“#”改为“/”使用引号的版本肯定会使用“/”,而ve没有使用rsion会使用文化特定的值。
在通话中的null
到ParseExact
表示“使用目前的文化” - 在这种情况下,它不会带来多大的改变,但是一个常用有效的选择是CultureInfo.InvariantCulture
。
不幸的是,没有办法让BCL解析格式字符串并保留信息;我自己的Noda Time项目纠正了这种情况,我希望能够更快地进行解析和格式化 - 但目前远没有生产准备。
7
您可以使用DateTime.ParseExact方法并传递所需的格式。
+0
这是将'string'解析为'DateTime'的最有效方法。使用'.Parse()'和'.TryParse()'解析没有格式信息是f..king该死的慢! – 2010-02-10 07:22:15
相关问题
- 1. 解析日期时间从奇格式
- 2. Golang解析奇怪的日期格式
- 3. freetds的奇怪日期时间格式
- 4. 奇怪的日期时间格式在iCloud日历
- 5. 毫秒格式解析日期时间?
- 6. JavaScript格式日期奇怪
- 7. 解析datetime到指定的日期时间格式在c#
- 8. 解析Java中的日期有一个奇怪的时区
- 9. 日期时间解析困境在C#
- 10. 日期/时间解析在C++
- 11. C#日期时间格式
- 12. C#日期时间格式
- 13. C#日期时间解析/转换此格式“20120314T130000”
- 14. 解析奇怪格式的文件
- 15. 在Go中解析奇数的JSON日期格式
- 16. 奇怪的日期格式问题
- 17. Oracle日期格式 - 奇怪的行为
- 18. 奇怪格式的API日期
- 19. 日期时间解析从字符串指定格式
- 20. 如何从此格式解析日期时间?
- 21. 解析C#日期时间到javascript日期时间
- 22. 在C++中的日期/时间解析(任何格式字符串到Epoch)
- 23. C#中的日期时间格式
- 24. C#中的日期时间格式
- 25. OpenERP奇怪的日期时间问题
- 26. 奇怪的.Net日期时间问题
- 27. 奇怪的writeline(日期时间结果)
- 28. MomentJS奇怪的日期时间输出
- 29. C#解析日期为“DDMMYYYY”格式?
- 30. 如何以特殊格式解析golang中的日期时间?
http://msdn.microsoft.com/en-us/library/8kb3ddd4.aspx有相关的解析,如果你提供你自己的formatString – Tanzelax 2010-02-10 07:27:52