C# 如何使用一个方法将多个不同类型的字符串中的日期值转换为datetime?

C# 如何使用一个方法将多个不同类型的字符串中的日期值转换为datetime?,c#,datetime,datetime-format,C#,Datetime,Datetime Format,我有多个datetime值。我想用一种方法将它们转换为datetime 日期值可能会因系统区域设置而改变,如下所示 '7/26/2013 12:00:00 AM' '26.7.2013 12:00:00' '07-26-2013 12:00 AM' 是否有一种方法可以在不更改系统区域设置的情况下使用一种方法来执行此操作 我相信这个问题可能对你有所帮助 以下是片段: CultureInfo ci = CultureInfo.GetCultureInfo("sl-SI"); string[] fm

我有多个datetime值。我想用一种方法将它们转换为datetime

日期值可能会因系统区域设置而改变,如下所示

'7/26/2013 12:00:00 AM'
'26.7.2013 12:00:00'
'07-26-2013 12:00 AM'
是否有一种方法可以在不更改系统区域设置的情况下使用一种方法来执行此操作

我相信这个问题可能对你有所帮助

以下是片段:

CultureInfo ci = CultureInfo.GetCultureInfo("sl-SI");
string[] fmts = ci.DateTimeFormat.GetAllDateTimePatterns();

if (DateTime.TryParseExact(date, fmts, ci, DateTimeStyles.AssumeLocal, out dt))
{
    DateTime = Convert.ToDateTime(date);
    Check = true;
}
更新:

此codeproject文章也可能对您有用:


?根据doc的
DateTime.TryParse(String,DateTime)方法,尝试使用当前区域性的格式规则解析日期和时间的字符串表示形式。
我尝试了DateTime.TryParse,但不起作用。可能是重复的,谢谢你的回答。我不知道文化信息。这可能会改变。我应该使用CultureInfo.CurrentCulture吗?我会使用CultureInfo.CurrentCulture,在大多数情况下都可以正常工作。还提供区域性名称列表,以备需要