如何获取C#中的月份名称?
如何findC#中的月份名称? 我不想写一个巨大的switch
语句或if
语句int
。 在VB.Net中,您可以使用MonthName()
,但是C#呢?
您可以使用CultureInfo获取月份名称。 你甚至可以得到短的月份名称以及其他有趣的事情。
我会build议你把这些扩展方法,这将允许你以后写更less的代码。 不过,你可以实现你喜欢的。
这是一个如何使用扩展方法来实现的例子:
using System; using System.Globalization; class Program { static void Main() { Console.WriteLine(DateTime.Now.ToMonthName()); Console.WriteLine(DateTime.Now.ToShortMonthName()); Console.Read(); } } static class DateTimeExtensions { public static string ToMonthName(this DateTime dateTime) { return CultureInfo.CurrentCulture.DateTimeFormat.GetMonthName(dateTime.Month); } public static string ToShortMonthName(this DateTime dateTime) { return CultureInfo.CurrentCulture.DateTimeFormat.GetAbbreviatedMonthName(dateTime.Month); } }
希望这可以帮助!
使用“MMMM”格式说明符:
string month = dateTime.ToString("MMMM");
string CurrentMonth = String.Format("{0:MMMM}", DateTime.Now)
如果你只是想使用MonthName,那么引用Microsoft.VisualBasic,它在Microsoft.VisualBasic.DateAndTime
//eg. Get January String monthName = Microsoft.VisualBasic.DateAndTime.MonthName(1);
假设你的date是今天。 希望这可以帮助你。
DateTime dt = DateTime.Today; string thisMonth= dt.ToString("MMMM"); Console.WriteLine(thisMonth);
private string MonthName(int m) { string res; switch (m) { case 1: res="Ene"; break; case 2: res = "Feb"; break; case 3: res = "Mar"; break; case 4: res = "Abr"; break; case 5: res = "May"; break; case 6: res = "Jun"; break; case 7: res = "Jul"; break; case 8: res = "Ago"; break; case 9: res = "Sep"; break; case 10: res = "Oct"; break; case 11: res = "Nov"; break; case 12: res = "Dic"; break; default: res = "Nulo"; break; } return res; }