我需要将“28/08/2012”转换为MM/dd/YYYY
表示“08/28/2012”的格式。
我怎样才能做到这一点?
我正在使用下面的代码,但它向我抛出了异常。
DateTime.ParseExact("28/08/2012", "ddMMyyyy", CultureInfo.InvariantCulture)
我需要将“28/08/2012”转换为MM/dd/YYYY
表示“08/28/2012”的格式。
我怎样才能做到这一点?
我正在使用下面的代码,但它向我抛出了异常。
DateTime.ParseExact("28/08/2012", "ddMMyyyy", CultureInfo.InvariantCulture)
但它向我抛出了异常
问题:
您的日期包含/
分隔符 ( "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
。
由于您的原始日期在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
(或者)
DateTime.Parse(date,ci.DateTimeFormat).ToString("d");