如何从DateTime获取完整的月份名称

时间:2011-07-20 16:44:09

标签: c# datetime calendar

获取DateTime个月的完整月份名称的正确方法是什么? 例如JanuaryDecember

我目前正在使用:

DateTime.Now.ToString("MMMMMMMMMMMMM");

我知道这不是正确的做法。

9 个答案:

答案 0 :(得分:243)

使用the "MMMM" custom format specifier

DateTime.Now.ToString("MMMM");

答案 1 :(得分:72)

你可以mservidio suggested,甚至更好,使用这个重载跟踪你的文化:

DateTime.Now.ToString("MMMM", CultureInfo.InvariantCulture);

答案 2 :(得分:35)

如果您想要当前月份,可以使用 DateTime.Now.ToString("MMMM")获取整月或DateTime.Now.ToString("MMM")获得缩写月份。

如果您想要获取月份字符串的其他日期,在将其加载到DateTime对象后,您可以使用该对象的相同功能:
dt.ToString("MMMM")获取整月或dt.ToString("MMM")获得缩写月份。

参考: Custom Date and Time Format Strings

或者,如果您需要特定于文化的月份名称,那么您可以尝试以下方法: DateTimeFormatInfo.GetAbbreviatedMonthName Method
DateTimeFormatInfo.GetMonthName Method

答案 3 :(得分:12)

这是

DateTime.Now.ToString("MMMM");

使用4 M s。

答案 4 :(得分:11)

您可以使用Culture来获取您所在国家/地区的月份名称,如:

System.Globalization.CultureInfo culture = new System.Globalization.CultureInfo("ar-EG");
string FormatDate = DateTime.Now.ToString("dddd., MMM dd yyyy, hh:MM tt", culture);

答案 5 :(得分:9)

应该只是DateTime.ToString( "MMMM" )

您不需要额外的所有M

答案 6 :(得分:4)

如果收到“ MMMM”作为响应,则可能是在获取月份,然后将其转换为定义格式的字符串。

DateTime.Now.Month.ToString(“ MMMM”)将输出“ MMMM”

DateTime.Now.ToString(“ MMMM”)将输出月份名称

答案 7 :(得分:2)

分享科学是美丽的,是上帝的喜悦

Debug.writeline(Format(Now, "dd MMMM yyyy"))

答案 8 :(得分:0)

您可以使用 System.Globalization 中的 CultureInfo 根据当前使用的文化获取该数据。

_ = CultureInfo.CurrentCulture.DateTimeFormat.GetMonthName(DateTime.Now.Month)

或者,使用 InvariantCulture 也可以获取英文名称。

_ = CultureInfo.InvariantCulture.DateTimeFormat.GetMonthName(DateTime.Now.Month);