【问题标题】:How to get the current time in Jerusalem with C#?如何使用 C# 获取耶路撒冷的当前时间?
【发布时间】:2012-09-26 15:35:05
【问题描述】:

我需要知道耶路撒冷的当前时间。

该代码占用服务器时间,但我需要耶路撒冷时间:

DateTime currentTime = DateTime.Now;
dayName = currentTime.DayOfWeek;

编辑:

在 Vinoth 答案的帮助下(我只使用了 AddHours(2) 部分)它应该是这样的(不起作用):

      DateTime currentTime = DateTime.Now;
      currentTime=currentTime.AddHours(2);//Jerusalem Time
      dayName = currentTime.DayOfWeek;

Edit2:我的改进(ToUniversalTime())

      DateTime currentTime = DateTime.Now;
      currentTime=currentTime.ToUniversalTime().AddHours(2);//Jerusalem Time
      dayName = currentTime.DayOfWeek;

【问题讨论】:

  • 你有什么tried
  • 这段代码所做的就是让您获得两个小时后的时间。你需要一个像@Vinoth's 这样使用时区的答案。

标签: c# timezone


【解决方案1】:

var israelTime = TimeZoneInfo.ConvertTimeBySystemTimeZoneId(DateTime.Now, "Israel Standard Time")

完整的时区ID列表可以在here找到。

【讨论】:

  • 我收到“在本地计算机上找不到时区 ID 'Israel Standard Time'。找不到文件 '/usr/share/zoneinfo/Israel Standard Time'。来自 AWS
【解决方案2】:

这将对您有所帮助。我用过这是我的应用程序之一。粘贴代码即可

public static DateTime GetIsraelTime(DateTime d) {
    d = d.AddHours(2);           // Israel is at GMT+2

    // April 2nd, 2:00 AM
    DateTime DSTStart = new DateTime(d.Year, 4, 2, 2, 0 ,0);  
    while (DSTStart.DayOfWeek != DayOfWeek.Friday)
        DSTStart = DSTStart.AddDays(-1);

    CultureInfo jewishCulture = CultureInfo.CreateSpecificCulture("he-IL");
    System.Globalization.HebrewCalendar cal = 
          new System.Globalization.HebrewCalendar();
    jewishCulture.DateTimeFormat.Calendar = cal;
    // Yom HaKipurim, at the start of the next Jewish year, 2:00 AM
    DateTime DSTFinish =
         new DateTime(cal.GetYear(DSTStart)+1, 1, 10, 2, 0 ,0, cal);
    while (DSTFinish.DayOfWeek != DayOfWeek.Sunday)
        DSTFinish= DSTFinish.AddDays(-1);

    if (d>DSTStart && d<DSTFinish)
        d = d.AddHours(1);

    return (d);
}

【讨论】:

  • 日期时间 currentTime = DateTime.Now; currentTime=currentTime.AddHours(2);//Jerusalem Time dayName = currentTime.DayOfWeek 你觉得这样吗?
  • 根据希伯来历法,您可以得到一周中的当前日期
  • 我的代码会在你年底时处理。额外的处理使代码很长..
  • 为什么要处理年末?
猜你喜欢
  • 2017-12-27
  • 1970-01-01
  • 2013-12-25
  • 1970-01-01
  • 1970-01-01
  • 2017-09-18
  • 1970-01-01
  • 2011-04-06
  • 1970-01-01
相关资源
最近更新 更多