如何将dd/MM/YYYY格式的字符串日期转换为YYYY-MM-dd datetime?

Pen*_*uen -1 c# datetime date

我想将dd/MM/YYYY格式化的字符串日期转换为YYYY-MM-dd日期时间.但它回到我身边

"字符串未被识别为有效的DateTime."

如何将"04/26/2016"字符串转换为yyyy-MM-dd日期时间格式?

 DateTime dt = DateTime.ParseExact("04/26/2016", "yyyy-MM-dd", CultureInfo.InvariantCulture);
 Console.WriteLine(dt);
Run Code Online (Sandbox Code Playgroud)

Rom*_*och 12

您以错误的方式解析日期字符串.你应该:

DateTime dt = DateTime.ParseExact("04/26/2016", "MM/dd/yyyy", CultureInfo.InvariantCulture);
Console.WriteLine(dt.ToString("yyyy-MM-dd"));
Run Code Online (Sandbox Code Playgroud)


Dmi*_*nko 6

从技术上讲,您可以只进行一些字符串操作

String source = "04/26/2016";
String result = String.Join("-", source.Split('/').Reverse());
Run Code Online (Sandbox Code Playgroud)

但是,DateTime.ParseExact是一个更好的解决方案:

String result = DateTime
  .ParseExact(source, "MM/dd/yyyy", CultureInfo.InvariantCulture)
  .ToString("yyyy-MM-dd", CultureInfo.InvariantCulture);  
Run Code Online (Sandbox Code Playgroud)