我自己有一个DateTime
变量
7/11/2014
我希望将该日期转换为
7th November 2014
我使用什么格式?我试过了ToLongDateString
,但它错过了日期的后缀。
答案 0 :(得分:6)
我不相信其中有任何直接的支持(" st"," nd"," th")。净。如果你只需要支持英语,我建议你自己硬编码。例如:
string text = string.Format("{0}{1} {2} {3}", dt.Day, GetOrdinal(dt.Day),
dt.ToString("MMMM"), dt.Year);
(你自己写GetOrdinal
的地方。)请注意,这假设您希望完全这种格式 - 不同的文化(即使在英语范围内)可能更喜欢November 7th 2014
例如。
如果你需要支持各种语言,那就变得非常困难了 - 不同的语言有一些非常不同的方法。
旁注:即使Noda Time还没有解决这个问题。我希望最终实现一些CLDR支持,理论上 应该为所有语言环境处理它。我们会看到......