标签: datetimeoffset

如何计算 Pandas 的每周变化?

我有以下 df 随时间变化的各种切片的值:

    date        A   B   C
0   2016-01-01  5   7   2
1   2016-01-02  6   12  15
...
2   2016-01-08  9   5   16
...
3   2016-12-24  5   11  13
4   2016-12-31  3   52  22
Run Code Online (Sandbox Code Playgroud)

我想创建一个新的数据框,按日期计算每个切片中的 ww 变化。例如,我希望新表对于从 1 月 1 日到 1 月 7 日的所有切片都为空。我希望 jan 8 的值是给定切片的 jan 8 值减去该切片的 jan 1 值的值。然后我希望 jan 9 的值是给定切片的 jan 9 值减去 jan 2 切片的值。如此等等,一路向下。

示例表如下所示:

    date        A   B   C
0   2016-01-01  0   0   0
1   2016-01-02  0   0   0
...
2 …
Run Code Online (Sandbox Code Playgroud)

python datetimeoffset offset moving-average pandas

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

C# 将特定时区中的 1 天添加到 DateTimeOffset

我有一个实例,考虑到夏令时规则DateTimeOffset,我需要在特定的TimeZone(西欧标准时间)中添加 1 天(因此它可能会导致Offset更改)。如果没有 3rd 方库,我该怎么做?

可验证示例:

using System;
using Microsoft.VisualStudio.TestTools.UnitTesting;

namespace UnitTestProject
{
    [TestClass]
    public class TimeZoneTests
    {
        [TestMethod]
        public void DateTimeOffsetAddDays_DaylightSaving_OffsetChange()
        {
            var timeZoneId = "W. Europe Standard Time";
            var utcTimestamp = new DateTimeOffset(2017, 10, 28, 22, 0, 0, TimeZoneInfo.Utc.BaseUtcOffset);
            var weuropeStandardTimeTimestamp = TimeZoneInfo.ConvertTimeBySystemTimeZoneId(utcTimestamp, timeZoneId);
            Assert.AreEqual(new DateTime(2017, 10, 29), weuropeStandardTimeTimestamp.DateTime);
            Assert.AreEqual(TimeSpan.FromHours(2), weuropeStandardTimeTimestamp.Offset);

            var weuropeStandardTimeTimestampNextDay = AddDaysInTimeZone(weuropeStandardTimeTimestamp, 1, timeZoneId);

            Assert.AreEqual(new DateTime(2017, 10, 30), weuropeStandardTimeTimestampNextDay);
            Assert.AreEqual(TimeSpan.FromHours(1), weuropeStandardTimeTimestamp.Offset);
        }

        private DateTimeOffset AddDaysInTimeZone(DateTimeOffset timestamp, int days, string …
Run Code Online (Sandbox Code Playgroud)

.net c# timezone datetimeoffset .net-4.6

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

如何将 OffsetDateTime 转换为 Date with time

我有 offsetdatetime 字段,我想转换为日期字段。我用了

val submissionDate:OffSetDateTime = OffsetDateTime.ofInstant(Instant.now(), ZoneOffset.UTC)
val date = Date.from(submissionDate.toInstant())
Run Code Online (Sandbox Code Playgroud)

此转换返回没有时间详细信息的日期。我是否必须手动将时间设置到date字段中,例如 hh:mm::ss 或那里的任何其他内置函数。

date datetimeoffset kotlin

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

从 datetimeoffset 中删除偏移量

我有一个 datetimeoffset 3/18/2019 11:46:10 AM -04:00 我需要将其转换为 3/18/2019 11:46:10 AM 我不需要应用偏移量。由于缺乏更好的词语,我只需删除最后 7 个字符即可。

sql-server datetime datetimeoffset

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

How to change the Timzone of a ZonedDateTime without converting the time

I have a ZonedDateTime which I have created using a DateTimeOffset and a timezone id (string), and I also have a DateTimeZone.

The particular case I have is that I need to change the Zone of the ZonedDateTime without actually converting the time (i.e. i have 18:00 UTC-4:00, i want to change this to 18:00 UTC-8 without converting the 18:00 accordingly)

The only pertinent function I'm finding is .WithZone(DateTimeZone) but this seems to convert my time based on the …

.net c# datetime datetimeoffset nodatime

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

无法将 jwt.iat(发布于)属性与当前日期时间进行比较 - (“自纪元以来的秒数”NumericDate)

我从 Web 服务获取 json Web 令牌,解码后返回如下内容:

\n
{\n  "exp": 1572468916,\n  "iat": 1572468316,\n  "iss": "https://ccc/auth/realms/yyy",\n  "aud": "xxx-api",\n  [...]\n
Run Code Online (Sandbox Code Playgroud)\n

根据第 2 节终端学, NumericDate 数据类型对应于“自纪元以来的秒数”

\n

所以我将它转换为 JavaScript 日期,如下所示:

\n
new Date(1572468316 * 1000)\nDate Wed Oct 30 2019 17:45:16 GMT-0300 (Argentina Standard Time)\n
Run Code Online (Sandbox Code Playgroud)\n

问题是我当前的时间是:

\n
new Date()\nDate Wed Oct 30 2019 14:45:19 GMT-0300 (Argentina Standard Time)\n
Run Code Online (Sandbox Code Playgroud)\n

实际上,当前时间是返回的时间new Date()(即 14:45,不是 17:45)

\n

我猜这与 GMT 有关,但我不知道如何处理它。

\n

我想将 iat 属性(显然还有 exp 属性)转换为当前时间,以便将其进行比较以new Date()查明令牌是否已过期。

\n

那么如何将 NumericDate 从 …

javascript datetime datetimeoffset gmt jwt

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

如何将“MM/dd/yy”字符串转换为最近一年的日期?

我将日期作为字符串输入,格式为MM/dd/yy.

我正在尝试将其转换为DateTimeOffset以下方式:

string dateString = "02/11/48";

DateTimeOffset.TryParseExact(
    dateString,
    "MM/dd/yy",
    CultureInfo.InvariantCulture,
    DateTimeStyles.None,
    out DateTimeOffset date);
Run Code Online (Sandbox Code Playgroud)

然而,当这个字符串被转换为 时DateTimeOffset,年份被设置为 1948。由于业务逻辑,我知道那里的日期总是有最近的未来年份,所以年份应该是 2048。

有没有办法将字符串转换为DateTimeOffset这种方式,或者在解析后我是否必须在其上添加额外的逻辑?

c# datetimeoffset .net-5

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

有没有办法将DateTimeOffset转换为午夜以来的分钟数?

有没有办法将DateTimeOffset午夜转换成分钟?

我希望偏移部分能够反映在它给出的答案中.

.net c# datetimeoffset

0
推荐指数
1
解决办法
1414
查看次数

如何正确解析DateTime字符串

我有输入日期时间字符串,如下所示:2015-01-28 17:55:43.问题是它们处于UTC + 8(或其他一些转变).无论软件运行的时区如何,我都需要将这些字符串解析并正确处理为UTC.我的问题是DateTime.Parse返回本地时间,而不是UTC时间,并且在解析字符串时我没有看到指定shift的方法.我目前的解决方案看起来像这样:

add.LastUpdatedTime = new DateTime((DateTime.Parse(text) - new TimeSpan(0, 8, 0, 0)).Ticks,DateTimeKind.Utc);

这很丑陋,我不确定它在任何情况下都能很好地运作.

有没有更好的方法呢?

c# datetime parsing datetimeoffset

0
推荐指数
1
解决办法
142
查看次数

生成日期时间偏移

我有DateTimeOffset输入参数.需要创建其他DateTimeOffset参数,其中月份比输入少2个月:

//DateTimeOffset  input;
DateTimeOffset modified = new DateTimeOffset(input.Year,
input.Month - 2, input.Day,
input.Hour, input.Minute,
input.Second, input.Millisecond,
input.Offset);

I get an exception  
Run Code Online (Sandbox Code Playgroud)

年,月和日参数描述不可表示的DateTime.

怎么了? - 月份是4. S0 4-2 = 2有效谢谢

c# datetimeoffset

0
推荐指数
1
解决办法
309
查看次数

将DateTimeOffset保留到服务器

我正在尽力找出如何将datetimeoffset字符串持久保存到服务器,以使其正确绑定到DateTimeOffset属性。

我试过使用这样的东西:

moment.utc().format() + ' +' +  new Date().getTimezoneOffset() / 60 + ':00';
Run Code Online (Sandbox Code Playgroud)

这显示为6/12/2017 22:27 +4:00,我将其作为字符串发送到服务器,但每次都似乎无法解析为DateTimeOffset对象。

目前,我正在为我的Web api框架使用Nancy,但我也想知道Web API也是如此。

目前,我只是发送回偏移量并设置DateTimeOffset属性,如下所示:

dto.CommentDate = new DateTimeOffset(DateTime.UtcNow).ToOffset(new TimeSpan(dto.Offset, 0, 0));

有一个更好的方法吗?我可以发送整个日期而不是仅发送偏移量吗?

javascript c# datetimeoffset nancy

0
推荐指数
1
解决办法
4695
查看次数

在GMT时区中保存和检索日期并转换为字符串

我有要求

  • 在GMT时区中保存并检索日期(日期应转换为String).因此,如果用户保存日期10/10/2017 23:05,那将保存为10/11/2017 4:05(如果在CST时间保存,例如,提前5小时)在DB中.
  • 在检索和向UI呈现日期时,对于CST用户,它应显示为 10/10/2017 23:05.
  • 此外,需要验证函数以了解日期是否需要以美国/非美国日期格式显示(dd/MM/YYYY与mm/DD/YYYY).

为了达到这个目的,我编写了以下代码片段,但是没有产生所需的结果.它存储的价值为10/11/2017 4:05,然而,当呈现给美国,即获得价值/刷新页面时,它又 增加了5个小时.删除了异常和其他不必要的代码,使其变得简单:

public class DatetoString implements Serializable
{
    private final DateFormat dateFormatter = createDateFormatter();

    // Sets Date to model
    public void setTypedValue(final Object val)
    {
        final String dateValue;
        String dateTimeFormat = BooleanUtils.isFalse(getUSDateFormatConfig()) ? "dd/MM/yyyy HH:mm" : "MM/dd/yyyy HH:mm";
        DateFormat df = new SimpleDateFormat(dateTimeFormat);
        df.setTimeZone(TimeZone.getTimeZone("GMT"));

        Date singleDate = (Date) df.parse(val.toString());
        dateValue = dateFormatter.format(singleDate);
        model.setValue(dateValue.toString());
        // Other code..
    }

    // Retrieves date from model
    public Object …
Run Code Online (Sandbox Code Playgroud)

java datetime date datetimeoffset

0
推荐指数
1
解决办法
595
查看次数

真实的日期和时间

我有一个审计线索,其中列出了用户进入/退出时间的日期和时间.是否有可能甚至我改变了系统的日期和时间.它忽略了我更改的系统日期/时间,并记录用户的实际日期和时间.

这是我的代码.

dbAuditTrail.AddActionLog(userID, timeIn, DateTime.Now.ToString("MM/dd/yyyy - hh:mm:ss tt"));
Run Code Online (Sandbox Code Playgroud)

c# timezone datetime datetimeoffset ntp

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