如何使用DateTime.TryParse将日期从yyyyMMdd格式转换为mm-dd-yyyy格式

时间:2011-07-14 09:45:36

标签: .net .net-3.5

我有一个字符串,其中包含yyyyMMdd格式的日期。我想把那个日期转换成 系统日期格式,使用ConvertTo.DateTime()方法或任何其他简单方法。

我用过:

string time = "19851231";
DateTime theTime= DateTime.ParseExact(time,
                                    Culture, DateTimeStyles.None, out resultDt);

它没有返回任何东西,实际上我对文化信息感到困扰。我不知道它存在于哪种文化中。

3 个答案:

答案 0 :(得分:5)

你几乎肯定会指定CultureInfo.InvariantCulture - 但目前代码看起来根本不会编译......看起来你正试图混合使用{{1} }和ParseExact,并且您没有指定格式字符串...

尝试:

TryParseExact

或者如果您想使用DateTime date = DateTime.ParseExact(time, "yyyyMMdd", CultureInfo.InvariantCulture);

TryParseExact

答案 1 :(得分:2)

请使用:

DateTime theTime = DateTime.ParseExact(time, "yyyyMMdd",
                                       CultureInfo.InvariantCulture);

答案 2 :(得分:0)

string format = "yyyyMMdd";
DateTime date = DateTime.ParseExact(input, format, 
                    CultureInfo.CurrentCulture, DateTimeStyles.None);

或多种日期格式:

string[] formats = {"yyyyMMdd", "dd/MM/yyyy"};
DateTime date = DateTime.ParseExact(input, formats, 
                    CultureInfo.CurrentCulture, DateTimeStyles.None);