【问题标题】:Generate datetime (exp: 09.02.2009) to string date (exp:Monday)生成日期时间(exp:09.02.2009)到字符串日期(exp:星期一)
【发布时间】:2009-02-09 09:06:13
【问题描述】:

我正在尝试学习或生成任何代码来学习字符串day("26.02.2009") ---> 给我“星期三”

我需要 C# 中的静态日期函数。

例如:

datetime Str_day= Returnstringdate("09.02.2009");  ---->Str_day="Monday";

Returnstringdate("09.02.2009")

{
     it must return Monday!!!
}

Returnstringdate("09.02.2009 12:30:32")

{
     it must return Monday!!!
}

【问题讨论】:

  • 26.02.2009 是星期四,顺便说一句
  • 您可能无法获得您想要的“现成”代码。但如果你表现出更多的认真,你可能会得到一些你“需要”的帮助。

标签: c# .net datetime date


【解决方案1】:

DateTime.ParseExact 允许您指定要解析的日期的确切格式。然后,您可以使用ToString("dddd") 将星期几作为字符串返回。

DateTime date = DateTime.ParseExact("09.02.2009", "dd.MM.yyyy", 
    CultureInfo.InvariantCulture);

string dayOfWeek = date.ToString("dddd");

您也可以使用DayOfWeek 属性,它返回一个System.DayOfWeek 枚举值。

DateTime date = DateTime.ParseExact("09.02.2009", "dd.MM.yyyy", 
    CultureInfo.InvariantCulture);

DayOfWeek day = date.DayOfWeek;
string dayString = day.ToString("G");

虽然第二个选项会将星期几作为非本地化(英语)字符串生成。

【讨论】:

  • 请注意,DateTime.ParseExact 需要第三个 IFormatProvider 参数。
【解决方案2】:
    DayOfWeek day = DateTime.ParseExact(
        "26.02.2009", "dd.MM.yyyy", CultureInfo.InvariantCulture).DayOfWeek;
    string dayString = day.ToString();

【讨论】:

    【解决方案3】:

    在 DateTime 对象上使用 DateTime.DayOfWeek 属性。

    另见this thread

    【讨论】:

      猜你喜欢
      • 2010-09-25
      • 1970-01-01
      • 2014-02-21
      • 1970-01-01
      • 2016-04-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-19
      相关资源
      最近更新 更多