2016-09-18 74 views
0

我想将由用户输入的数字月份转换为月份名称。我发现很容易使用,如果其他条件,但有没有任何功能,我可以使用,而不使用条件?我需要编写大量的代码。 注:仅仅一个月!如何将数字月份转换为C#控制台中的月份全名

int month = 0; 
bool TempResult = false; 
Console.Write("Month: "); 
TempResult = int.TryParse(Console.ReadLine(), out Month); 

回答

4

有两个相当简单的选择:

  • 构造使用该号码作为一个月的日期,然后用自定义格式,例如将其格式化

    DateTime date = new DateTime(2000, month, 1); 
    string monthName = date.ToString("MMMM"); 
    
  • 使用DateTimeFormatInfo.MonthNames

    DateTimeFormatInfo info = CultureInfo.CurrentCulture.DateTimeFormat; 
    // The array is 0-based, e.g. MonthNames[0] is for January 
    string monthName = info.MonthNames[month - 1]; 
    

这两个会从目前的文化名称;在任何情况下,如果需要,您可以指定不同的CultureInfo。 (在第一种情况下,将其用作ToString的第二个参数。)

+0

@IvanStoev:是的,正在编辑。 –

+0

我懂了!谢谢,那么你能告诉我更多关于ToString中的date formart吗?或者你可以给我一个参考链接。 –

+0

@RathpanhaSarun:当然,只要搜索“自定义日期格式msdn”,你就可以访问https://msdn.microsoft.com/en-us/library/8kb3ddd4(v=vs.110).aspx –

相关问题