C# 以自定义格式分析包含日期和时间的字符串

C# 以自定义格式分析包含日期和时间的字符串,c#,parsing,datetime,time,C#,Parsing,Datetime,Time,我有一个下一格式的字符串“ORDER20100322194007”,其中20100322是日期,194007是时间。如何解析字符串并获取包含的DateTime对象?您可以使用方法指定解析时应使用的格式。它是否总是以顺序开始 string pattern = "'ORDER'yyyyMMddHHmmss"; DateTime dt; if (DateTime.TryParseExact(text, pattern, CultureInfo.InvariantCulture,

我有一个下一格式的字符串
“ORDER20100322194007”
,其中
20100322
是日期,
194007
是时间。如何解析字符串并获取包含的
DateTime
对象?

您可以使用方法指定解析时应使用的格式。

它是否总是以
顺序开始

string pattern = "'ORDER'yyyyMMddHHmmss";
DateTime dt;
if (DateTime.TryParseExact(text, pattern, CultureInfo.InvariantCulture, 
                           DateTimeStyles.None,
                           out dt))
{
    // dt is the parsed value
} 
else 
{
    // Invalid string
}
如果无效的字符串应引发异常,则使用而不是


如果它不总是以“ORDER”开头,那么你可以做任何你需要做的事情来获得日期和时间部分,并删除“ORDER”从上面的格式模式。

如果您的字符串没有固定的结构,那么您可以使用regex分隔数字和字符,然后使用convert to datetime函数分隔数字。

这是一个好问题。也许您应该将标题改为“在.NET中对自定义日期格式进行DateTime解析”