如何在C#中将DateTime对象转换为dd/mm/yyyy格式?

16
3个回答

45

除了其他答案要注意的一点是“/”本身就是格式字符,表示本地日期分隔符。如果您希望确保它使用实际的斜杠,请使用不变的区域设置(使用斜杠):

string s = dateTime.ToString("dd/MM/yyyy", CultureInfo.InvariantCulture);

或者转义斜杠:

string s = dateTime.ToString("dd'/'MM'/'yyyy");

我会给Jon点赞,那是我见过的东西,但从未考虑过。 - JasonRShaver
3
如果更适合的话(为了节省下一个人查找),可以使用 String.Format(CultureInfo.InvariantCulture, "{0:dd/MM/yyyy}", dateTime); - Myster
谢谢,它起作用了 :) - Manjay_TBAG

33

方便的字符串格式代码列表:http://john-sheehan.com/blog/net-cheat-sheets/ /无耻的自我推广 - John Sheehan
或ToString大写T :) - Crispy
没错,没错。该死的 C# 大小写总是让我困扰。 - Welbog
我不得不再次确认一下这个问题是否与Java有关。 - Crispy
实际上,这段代码存在一个微妙的错误。正斜杠似乎是一个特殊字符,指向区域设置的默认分隔符。请参见https://dev59.com/8Ww15IYBdhLWcg3w3vpe#6343332--在引号中转义斜杠:ToString("dd'/'MM'/'yyyy")。 - Cornelius

18
DateTime d = DateTime.Now;
string s = d.ToString("dd/MM/yyyy");
Console.WriteLine(s);

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接