【问题标题】:Convert.ToDateTime: how to set formatConvert.ToDateTime:如何设置格式
【发布时间】:2013-03-04 14:13:45
【问题描述】:

我像这样使用转换:

Convert.ToDateTime(value)

但我需要将日期转换为“mm/yy”等格式。
我正在寻找这样的东西:

var format = "mm/yy";
Convert.ToDateTime(value, format)

【问题讨论】:

  • DateTime 对象没有定义格式。您可以以某种格式输出 DataTime,这是您的意思吗?

标签: c# .net datetime


【解决方案1】:

您可能应该改用DateTime.ParseExactDateTime.TryParseExact。它们允许您指定特定的格式。我个人更喜欢Try-versions,因为我认为它们为错误情况生成了更好的代码。

【讨论】:

  • datetime.paeseExact("12/12", "mm/yy", Cul..)={01/01/2012 00:12:00};
  • 但我预计 {01/12/12} 或 {12/12}
  • @Refael 你需要阅读Custom Date and Time Format Stringsmm 是分钟,MM 是年。
  • 我想你的意思是MM
【解决方案2】:

如果value 是该格式的string,并且您想将其转换为DateTime 对象,则可以使用DateTime.ParseExact 静态方法:

DateTime.ParseExact(value, format, CultureInfo.CurrentCulture);

例子:

string value = "12/12";
var myDate = DateTime.ParseExact(value, "MM/yy", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None);

Console.WriteLine(myDate.ToShortDateString());

结果:

2012-12-01

【讨论】:

  • 我试试这个:string value = "12/12";格式=“mm/yy”;然后 datetime.paeseExact(value, format, Cul..) = 返回 {01/01/2012 00:12:00}。为什么?
  • 所以DateTime.ParseExact(value, "mm/yy", CultureInfo.CurrentCulture); 应该可以工作。
  • 我预计 {01/12/12} 或 {12/12}
【解决方案3】:

您可以使用 Convert.ToDateTime 是否显示在 How to convert a Datetime string to a current culture datetime string

DateTimeFormatInfo usDtfi = new CultureInfo("en-US", false).DateTimeFormat;

var result = Convert.ToDateTime("12/01/2011", usDtfi)

【讨论】:

    【解决方案4】:

    DateTime 没有格式。该格式仅在您将 DateTime 转换为字符串时适用,这会隐含地在表单、网页等上显示值。

    查看在哪里显示 DateTime 并在那里设置格式(或者如果您需要其他指导,请修改您的问题)。

    【讨论】:

      【解决方案5】:

      这个怎么样:

          string test = "01-12-12";
          try{
               DateTime dateTime = DateTime.Parse(test);
               test = dateTime.ToString("dd/yyyy");
          }
          catch (FormatException exc)
          {
              MessageBox.Show(exc.Message);
          }
      

      其中 test 将等于“12/2012”

      希望对你有帮助!

      请阅读HERE

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2020-02-05
        • 2016-03-31
        • 1970-01-01
        • 1970-01-01
        • 2021-08-23
        • 1970-01-01
        • 2013-11-09
        相关资源
        最近更新 更多