标签: timezone-offset

Javascript显示各种时区

以下脚本应根据偏移量-10(夏威夷)显示当前本地时间,但它不起作用.

无法弄清楚我哪里出错了.

<h3>Current Time in Arizona is 
<script type="text/javascript">
<!--
    var currentTime = new Date()
    var hours = currentTime.getHours()
    var minutes = currentTime.getMinutes()

    if (minutes < 10)
    minutes = "0" + minutes

    var suffix = "AM";
    if (hours >= 12) {
    suffix = "PM";
    hours = hours - 12;
    }
    if (hours == 0) {
    hours = 12;
    }

    document.write("<b>" + hours + ":" + minutes + " " + suffix + "</b>")
//-->
</script>
</h3>
Run Code Online (Sandbox Code Playgroud)

javascript timezone timezone-offset

2
推荐指数
1
解决办法
1万
查看次数

如何在Java中获取时区的UTC偏移量?

给定timezone(America/New_York),我如何获得UTC偏移量?

我尝试过使用java.util.TimeZone但没有运气.如果解决方案可行,我也可以使用Joda Time.

java timezone jodatime timezone-offset

2
推荐指数
1
解决办法
1万
查看次数

R不再接受GMT + n/GMT-n格式的时区

?timezones 状态 "Most platforms support time zones of the form GMT+n and GMT-n, which assume at a fixed offset from UTC (hence no DST)."

我今年早些时候使用旧代码tz="GMT-8".只有对我的计算机的更改已经更新到R版本"R version 3.2.2 (2015-08-14)"并通过向我的Rprofile添加一行代码从旧用户帐户迁移我的库"C:\Program Files\R\R-3.2.2\library\base\R".只是要详细的代码了.libPaths(c("C:/Users/XXXX XXXX/Documents/R/win-library/3.2",.Library.site)).为什么我的系统突然不接受这种tz格式?我可以更改哪些系统设置来解决此问题?

下面的工作示例.

tdat<-c("11/19/2014 12:45", "11/19/2014 13:00", "11/19/2014 13:15", 
"11/19/2014 13:30", "11/19/2014 13:45", "11/19/2014 14:00", "11/19/2014 14:15", 
"11/19/2014 14:30", "11/19/2014 14:45", "11/19/2014 15:00")

as.POSIXct(strptime(tdat,"%m/%d/%Y %H:%M",tz="GMT-8"))

Warning messages:
1: In strptime(tdat, "%m/%d/%Y %H:%M", tz = "GMT-8") :
  unknown timezone 'GMT-8'
2: In as.POSIXct.POSIXlt(strptime(tdat, "%m/%d/%Y %H:%M", …
Run Code Online (Sandbox Code Playgroud)

timezone r timezone-offset

2
推荐指数
1
解决办法
1705
查看次数

在Postgres中的时区之间转换

我试图了解Postgre中的时间戳和时区。我想我明白了,直到我写这篇文章为止。
专注于“在时区之间转换”部分。它有两个例子。

(将默认时区配置考虑为UTC。)

例子1

db=# SELECT timezone('US/Pacific', '2016-01-01 00:00'); outputs 2015-12-31 16:00:00
Run Code Online (Sandbox Code Playgroud)

根据本文和我的理解,由于该函数的'2016-01-01 00:00'一部分timezone只是一个字符串,因此将其静默转换为默认的UTC。因此,'2016-01-01 00:00' UTC然后将其转换US/Pacifictimezone函数所要求的,即2015-12-31 16:00:00

例子2

db=# SELECT timezone('US/Pacific', '2016-01-01 00:00'::timestamp); outputs 2016-01-01 08:00:00+00
Run Code Online (Sandbox Code Playgroud)

不好意思,我不明白为什么,那里的解释也无济于事。好的,函数的'2016-01-01 00:00'::timestamp一部分timezone不再是字符串,而是实际的时间戳。在什么时区?如果是UTC,则输出必须与示例1相同。因此,它将自动转换为US/Pacific?。那么输出是UTC吗?但为什么?我要求的 不是US/Pacifictimezone的UTC。

请说明timezone何时获取时间戳并被要求转换时间戳时的行为。谢谢。

postgresql timezone timestamp timezone-offset timestamp-with-timezone

2
推荐指数
1
解决办法
4275
查看次数

Java将毫秒时间戳转换为相对于给定时区的日期

我已经看到了很多关于这方面的资源,但我无法得到的一件事是在转换过程中转换毫秒时间戳时,我如何添加相应的时区。

Date date = new Date(Long.valueOf(dateInMil*1000L);
SimpleDateFormat myDate = new SimpleDateFormat("EEE, MMM d, ''yy");
String formatted = myDate.format(date);
Run Code Online (Sandbox Code Playgroud)

现在,如果我在字符串格式中有一个时区/偏移量,即“-04:00”或“+2:00”,如何将其应用于上述内容,以便获得正确的日期?

java date simpledateformat date-formatting timezone-offset

2
推荐指数
1
解决办法
5018
查看次数

如何编写带时区但没有时间部分的ISO 8601日期

具有时区的ISO 8601日期时间的格式如下:

2018-09-07T05:28:42Z
Run Code Online (Sandbox Code Playgroud)

但是,我需要在系统中表示一些日期,其精度是天,而不是秒,这意味着它将是ISO 8601日历日期。日历日期的格式如下:

2018-09-07
Run Code Online (Sandbox Code Playgroud)

在有关该标准的Wikipedia文章中(我无权访问该标准本身,因为您必须为此特权付费),在讨论日期时没有提及时区。它确实谈到了省略部分时间:

为了简洁起见,基本或扩展时间格式中都可以省略秒或分钟和秒,但会降低精度:[hh]:[mm],[hh] [mm]和[hh]是降低的精度时间格式。

由此看来,您似乎不能省略小时,因此我无法这样写一个日历日期:

2018-09-07TZ
Run Code Online (Sandbox Code Playgroud)

看来,我能做的最好的事情就是缩短时间:

2018-09-07T00Z
Run Code Online (Sandbox Code Playgroud)

但是,如果我可以避免的话,我就不想这样做,因为我为日期添加的精度比实际的精度更高。该日期表示“在UTC时区的2018年9月7日的某个时间”,而不是“在UTC时区的2018年9月7日的午夜的某个时间”。

有什么建议么?

language-agnostic datetime date iso8601 timezone-offset

2
推荐指数
1
解决办法
1453
查看次数

试图了解日期时间字符串中的“ PT1H”

我正在使用Weather API将天气信息作为我项目的一项服务。我试图了解一些我似乎找不到信息的时区偏移量。

我使用的网址是:

https://api.weather.gov/gridpoints/VEF/154,48
Run Code Online (Sandbox Code Playgroud)

这是一些示例返回值:

"temperature": {
    "sourceUnit": "F",
    "uom": "unit:degC",
    "values": [
        {
            "validTime": "2019-05-11T16:00:00+00:00/PT1H",
            "value": 18.333333333333371
        },
        {
            "validTime": "2019-05-12T04:00:00+00:00/PT2H",
            "value": 16.1111111111112
        },
        {
            "validTime": "2019-05-12T21:00:00+00:00/PT4H",
            "value": 26.666666666666742
        },
        ...
    ]
}
Run Code Online (Sandbox Code Playgroud)

我知道PT的意思是太平洋时区。但是我似乎找不到像1H2H等字符旁边的任何信息。

如果有人可以建议,将不胜感激-谢谢

timezone timezone-offset

2
推荐指数
1
解决办法
1155
查看次数

Azure 数据资源管理器中的时区感知查询

我使用 Azure 数据资源管理器来存储温度传感器值。时间戳采用 UTC 时间。我想在过去 7 天内按天汇总这些值。尽管如此,我想使用这些值的来源地本地时间,并按本地时间的时间戳进行聚合(例如,午夜将在 00:00+2h 和 22:00UTC)。如何使用 ADX 中的 Kusto 查询语言执行此操作?

timezone timezone-offset timestamp-with-timezone azure-data-explorer

2
推荐指数
1
解决办法
1万
查看次数

如何在 javascript/nodejs 中获取澳大利亚/悉尼时区偏移?

根据夏令时,澳大利亚/悉尼时区偏移(UTC 与 AEST 之差)为 +10:00(从 4 月第一个星期日开始)和 +11:00(从 10 月第一个星期日开始)。

差别是 600 分钟或 660 分钟。

如何获取 javascript/nodejs/momentjs 中的时差?不考虑服务器时间吗?

javascript timezone node.js timezone-offset momentjs

2
推荐指数
1
解决办法
4934
查看次数

如何通过单元测试测试 timeZone 方法?

我使用以下方法获取时区偏移值,例如 GMT-3,并返回给定偏移量的 time zoneId 列表。

private static List<String> getTimeZonesByZoneOffset(final int offset) {
    return ZoneId.getAvailableZoneIds()
            .stream()
            .filter(zoneId -> ZoneId.of(zoneId)
                    .getRules()
                    .getOffset(Instant.now())
                    .equals(ZoneOffset.ofHours(offset)))
            .sorted()
            .collect(Collectors.toList());
}
Run Code Online (Sandbox Code Playgroud)

然后我从我的数据库中检索与我的区域列表具有相同 zoneId 的相应记录。我在我的服务中使用了这样的方法:

public List<Product> getByOffset(int offset) {
    final List<String> zones = getTimeZonesByZoneOffset(offset);
    final List<Product> products = productRepository.findAllByZone(zones);
    return getProductList(products);
}
Run Code Online (Sandbox Code Playgroud)

我想在单元测试中测试这两种方法。但我不确定我应该如何设置测试机制。是否有任何单元测试示例?

java testing timezone unit-testing timezone-offset

2
推荐指数
1
解决办法
67
查看次数