【问题标题】:Get DateTime.DayOfWeek for specific culture获取特定文化的 DateTime.DayOfWeek
【发布时间】:2012-11-12 10:30:19
【问题描述】:

是否有可能获得特定文化的DayOfWeek

有什么线索吗?

谢谢!!!

【问题讨论】:

  • 文化对一周中的每一天有何影响?你想要一种不同的语言吗?
  • 星期几是如何依赖于文化的?现在是星期一,除非您的时区偏移量足够大,否则全世界都是如此。
  • 尝试关注 DateTime.Now.ToString("dddd", new System.Globalization.CultureInfo("ar-EG"))

标签: c# .net


【解决方案1】:

尝试以下方法:

DateTime.Now.ToString("dddd", new System.Globalization.CultureInfo("ar-EG"))

详情请MSDN

【讨论】:

  • 这个解决方案使用 Tostring() 方法,但是如果我在这种情况下使用 System.DayOfWeek 你有什么解决方案吗?
【解决方案2】:

您想获取给定文化中今天DayOfWeek 的日期名称吗?

DateTime.Now.ToString("dddd", new System.Globalization.CultureInfo("de-DE"))

(“蒙塔格”代表德国)

【讨论】:

    【解决方案3】:

    您可以从DateTimeFormatInfo.DayNames Property 获取本地化的日期名称:

    var cultureInfo = new CultureInfo("de-DE");
    var dateTimeInfo = cultureInfo.DateTimeFormat;
    var dayNames = dateTimeInfo.DayNames;
    var result = dayNames[(int)DayOfWeek.Wednesday];
    // result == "Mittwoch"
    

    【讨论】:

    • 取决于您的需要。如果您需要所有日子的名称,这比ToString("dddd"... 更好。但如果你有DateTime 并且需要当天的名称,ToString("dddd"... 更好。
    【解决方案4】:

    string myTime = DateTime.Now.ToString("dddd", new System.Globalization.CultureInfo("it-IT"));

    该示例使用意大利文化代码,有关可用文化代码的列表,请查看this

    【讨论】:

      猜你喜欢
      • 2014-04-11
      • 1970-01-01
      • 2023-03-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-01-02
      • 1970-01-01
      相关资源
      最近更新 更多