Answers:
DateTime.Now.ToString("MMMM");
您可以按照mservidio的建议进行操作,或者甚至更好,使用此重载来跟踪您的文化:
DateTime.Now.ToString("MMMM", CultureInfo.InvariantCulture);
如果需要当前月份,则可以使用它
DateTime.Now.ToString("MMMM")
来获取完整的月份或DateTime.Now.ToString("MMM")
缩写的月份。
如果要获取月份字符串的其他日期,则在将其加载到DateTime对象中之后,可以使用该对象的相同功能:
dt.ToString("MMMM")
获取完整的月份或dt.ToString("MMM")
获取缩写的月份。
参考: 自定义日期和时间格式字符串
或者,如果您需要特定于区域性的月份名称,则可以尝试以下操作:
DateTimeFormatInfo.GetAbbreviatedMonthName方法
DateTimeFormatInfo.GetMonthName方法
DateTime
NOT中做到这一点DateTime.Now
。我以为是string mon = myDate.Month.ToString("MMM")
时候让“ MMM”吐到我的字符串变量中而使我感到沮丧。很高兴您努力展示了如何使用.ToString("MMM")
日期本身来获取月份(如果不是月份的话)DateTime.Now
。以及如何解释之间的差异MMM
和MMMM
。此页面上的最佳答案。荣誉
如果收到“ MMMM”作为响应,则可能是在获取月份,然后将其转换为定义格式的字符串。
DateTime.Now.Month.ToString("MMMM")
将输出“ MMMM”
DateTime.Now.ToString("MMMM")
将输出月份名称
您可以使用文化来获取您所在国家/地区的月份名称,例如:
System.Globalization.CultureInfo culture = new System.Globalization.CultureInfo("ar-EG");
string FormatDate = DateTime.Now.ToString("dddd., MMM dd yyyy, hh:MM tt", culture);
DateTime birthDate = new DateTime(1981, 8, 9);
Console.WriteLine ("I was born on the {0}. of {1}, {2}.", birthDate.Day, birthDate.ToString("MMMM"), birthDate.Year);
/* The above code will say:
"I was born on the 9. of august, 1981."
"dd" converts to the day (01 thru 31).
"ddd" converts to 3-letter name of day (e.g. mon).
"dddd" converts to full name of day (e.g. monday).
"MMM" converts to 3-letter name of month (e.g. aug).
"MMMM" converts to full name of month (e.g. august).
"yyyy" converts to year.
*/