为什么DateTime.ToString(“dd / MM / yyyy”)给我dd-MM-yyyy?

我希望我的date时间被转换为格式为“dd / MM / yyyy”的string

每当我使用DateTime.ToString("dd/MM/yyyy") ,我会得到dd-MM-yyyy

有什么文化信息,我必须设置?

斜线是date分隔符,所以将使用当前的文化date分隔符。

如果你想对它进行硬编码,总是使用斜杠,你可以这样做:

 DateTime.ToString("dd'/'MM'/'yyyy") 

通过CultureInfo.InvariantCulture作为DateTime的第二个参数,它会返回string作为你想要的,甚至是一个非常特殊的格式:

 DateTime.Now.ToString("dd|MM|yyyy", CultureInfo.InvariantCulture) 

将返回:28 | 02 | 2014

添加CultureInfo.InvariantCulture作为参数:

 using System.Globalization; ... var dateTime = new DateTime(2016,8,16); dateTime.ToString("dd/MM/yyyy", CultureInfo.InvariantCulture); 

将返回:

 "16/08/2016" 

也许愚蠢的问题/答案,但你有没有尝试dd/MM/yyyy ? 请注意大小写。

mm是前导零的分钟数。 所以我怀疑这就是你想要的。

这可能有帮助: http : //www.geekzilla.co.uk/View00FF7904-B510-468C-A2C8-F859AA20581F.htm