【问题标题】:How to convert a string of MM-dd-yyyy to (full month)-yyyy如何将一串 MM-dd-yyyy 转换为(整月)-yyyy
【发布时间】:2016-09-23 20:18:01
【问题描述】:

我有一个值为 07/31/2016 的字符串变量,我需要将其转换为 2016 年 7 月。如何在 C# 中执行此操作?

【问题讨论】:

    标签: c# date-format


    【解决方案1】:
    var input = "07/31/2016";
    var date = DateTime.Parse(input);
    var output = date.ToString("MMMM-yyyy");
    

    DateTime.Parse

    另见date and time format strings

    【讨论】:

      【解决方案2】:
      CultureInfo provider = CultureInfo.InvariantCulture;
      var input = "07/31/2016";
      var date = DateTime.ParseExact(input,"MM/dd/yyyy",provider);
      var output = date.ToString("MMMM-yyyy");
      

      【讨论】:

      • 最准确的答案归功于 ParseExact,它在每个环境中提供完全相同的结果。
      【解决方案3】:

      这应该可行:

      string iDate = "07/31/2016";
      DateTime oDate = Convert.ToDateTime(iDate);
      Console.WriteLine(CultureInfo.CurrentCulture.DateTimeFormat.GetMonthName(oDate.Month) + "  " + oDate.Year);
      

      【讨论】:

        【解决方案4】:

        解析为 DateTime 并使用新格式调用 ToString()。

        【讨论】:

        • 我没有投反对票,但没有足够的细节让我理解。解决问题后,我认为您是正确的。谢谢
        猜你喜欢
        • 2011-10-22
        • 2011-03-18
        • 1970-01-01
        • 2016-06-21
        • 1970-01-01
        • 1970-01-01
        • 2023-03-08
        • 1970-01-01
        相关资源
        最近更新 更多