【问题标题】:Format date using variable使用变量格式化日期
【发布时间】:2013-01-08 10:18:47
【问题描述】:

以下给出的输出为 20121212。​​

DateTime dd = new DateTime(2012, 12, 12);
string val = String.Format("{0:yyyyMMdd}", dd);

当格​​式在变量中时。以下没有给出上述输出。

DateTime dd = new DateTime(2012, 12, 12);
string dateFormat = "yyyyMMdd";
string val = String.Format("{0}:{1}", dd, dateFormat);

如何使用上述变量中​​的格式来实现它?

【问题讨论】:

    标签: c# date-format


    【解决方案1】:

    我相信你有一个字符串变量的格式,可能这就是你要找的:

    DateTime dd = new DateTime(2012, 12, 12);
    string strFormat = "yyyyMMdd";
    string val = String.Format("{0:"+ strFormat + "}", dd);
    

    【讨论】:

      【解决方案2】:

      只需使用DateTime.ToString:

      string val = dd.ToString( dateFormat );
      

      您将String.Format 与您的格式字符串混淆了,而格式字符串仅以这种方式工作{0:yyyyMMdd}

      【讨论】:

      • @eMi:不,DateTime? 不是DateTime。您必须使用 nullableDateTime.Value.ToString("...") 或更好,使用新的空条件运算符:nullableDateTime?.ToString("...");
      【解决方案3】:

      最简单的方法就是

      DateTime dd = new DateTime(2012, 12, 12);
      string strFormat = "yyyyMMdd";
      string val = dd.ToString(strFormat);
      

      String.Format 不直接支持可变格式字符串。

      【讨论】:

        【解决方案4】:

        您可以使用DateTime.ToString(string) 方法:

        DateTime dd = new DateTime(2012, 12, 12);
        string dateFormat = "yyyyMMdd";
        string val = dd.ToString(dateFormat);
        

        【讨论】:

          【解决方案5】:

          像这样尝试String.Format

          DateTime dt = new DateTime(2012, 12, 12);
          string Format = "yyyyMMdd";
          string yourstring = String.Format("{0:" + Format + "}", dt);
          Console.WriteLine(yourstring);
          

          Demo

          【讨论】:

            【解决方案6】:

            你也可以使用.ToString(字符串格式)

            DateTime dd = new DateTime(2012, 12, 12);
            string strFormat = "yyyyMMdd";
            string val = dd.ToString(strFormat);
            

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 2020-09-22
              • 1970-01-01
              • 1970-01-01
              • 2022-01-03
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多