将dd / MM / yyyy转换为MM / dd / YYYY

时间:2012-09-08 05:49:06

标签: c# date-formatting date-conversion

我需要将“28/08/2012”转换为MM/dd/YYYY格式,即“08/28/2012”。
我怎么能这样做?

我正在使用下面的代码,但它向我抛出异常。

DateTime.ParseExact("28/08/2012", "ddMMyyyy",  CultureInfo.InvariantCulture)

2 个答案:

答案 0 :(得分:24)

  

但它向我提出异常

<强>问题:

您的日期包含/分隔符("28/08/2012"),并且您没有以日期字符串格式("ddMMyyyy")提供该日期。

<强>解决方案:

应为"dd/MM/yyyy"

这样

DateTime.ParseExact("28/08/2012", "dd/MM/yyyy", CultureInfo.InvariantCulture)
                        .ToString("MM/dd/yyyy", CultureInfo.InvariantCulture);

执行此操作后,我们将收到一个DateTime对象,其中包含您填充的日期,并使用.ToString()使用所需的日期格式"MM/dd/yyyy"和可选的区域性信息CultureInfo.InvariantCulture转移到字符串。

答案 1 :(得分:0)

由于您的原始日期位于en-GB文化中,因此您可以创建CultureInfo对象并自然地解析DateTime

string date = "28/08/2012";
System.Globalization.CultureInfo ci = System.Globalization.CultureInfo.CreateSpecificCulture("en-GB");
Convert.ToDateTime(date,ci.DateTimeFormat).ToString("d");//short date pattern

(OR)

DateTime.Parse(date,ci.DateTimeFormat).ToString("d");
相关问题