给出现在的最接近的可能日期和leap年中的原始日期

cs0815

我想确定现在给出的最接近的时间点和原始时间点。可以按以下方式正常工作:

var originalPointInTime = new DateTime(2016, 3, 29);
var now = new DateTime(2017, 2, 3);

var closestDay1 = new DateTime
(
now.Year,
originalPointInTime.Month,
originalPointInTime.Day,
originalPointInTime.Hour,
originalPointInTime.Minute,
originalPointInTime.Second,
originalPointInTime.Millisecond
);

但是,如果我使用a年的时间点,则不会:

var leapYearPointInTime = new DateTime(2016, 2, 29);

var closestDay2 = new DateTime
(
    now.Year,
    leapYearPointInTime.Month,
    leapYearPointInTime.Day,
    leapYearPointInTime.Hour,
    leapYearPointInTime.Minute,
    leapYearPointInTime.Second,
    leapYearPointInTime.Millisecond
);

有没有简单的方法可以使它在leap年工作?我知道:

DateTime.IsLeapYear

并可以编写一些令人费解的代码,但是也许有一种简单的方法可以实现以上目标?

本杰

我不确定我是否理解您的问题。什么是最近的时间点。是2月28日还是3月01日?我会这样做

DateTime now = DateTime.Now;

var leapYearPointInTime = new DateTime(2016, 2, 29);

if (DateTime.IsLeapYear(leapYearPointInTime.Year))
    if (2 == leapYearPointInTime.Month)
        if (29 == leapYearPointInTime.Day)
            leapYearPointInTime = leapYearPointInTime.Add(new TimeSpan(-1, 0, 0, 0));

var closestDay2 = new DateTime
(
    now.Year,
    leapYearPointInTime.Month,
    leapYearPointInTime.Day,
    leapYearPointInTime.Hour,
    leapYearPointInTime.Minute,
    leapYearPointInTime.Second,
    leapYearPointInTime.Millisecond
);

不知道这算是“卷积”,甚至算不上是最接近的时间点,但是我希望这会有所帮助

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

用JavaScript最接近的日期和时间

来自分类Dev

日期和时间最接近匹配excel

来自分类Dev

Symfony 3从现在开始寻找最接近的日期

来自分类Dev

日期功能可确定给定日期和日期的最接近日期

来自分类Dev

按最接近现在但不是旧日期的日期对列表进行排序

来自分类Dev

查找最接近的日期(javascript)

来自分类Dev

获取最接近sysdate的日期

来自分类Dev

查找最接近的日期(javascript)

来自分类Dev

如何显示最接近所选日期的日期

来自分类Dev

部分日期(月份和日期)出现在一个范围中的次数及其星期几

来自分类Dev

使用Java流计算日期的出现在项目列表

来自分类Dev

如何选择出现在不同日期的 IP 地址?

来自分类Dev

日期选择器出现在模态类后面

来自分类Dev

计算leap年中没有“额外”日期的日期之间的天数

来自分类Dev

给定日期和星期几,找到将来的最接近日期

来自分类Dev

使用Noda Time查找与本地日期和时区最接近的有效全球日期

来自分类Dev

按与已经发生和将发生的日期最接近的日期排序

来自分类Dev

对于表a中的每个记录,返回表b中具有最接近但现在大于现在的日期的记录NOW()

来自分类Dev

SQL语句匹配最接近的日期?

来自分类Dev

从列表中获取最接近的日期时间

来自分类Dev

检查哪个日期最接近今天

来自分类Dev

SQL按日期获取最接近的值

来自分类Dev

Laravel在最接近今天的前端显示日期

来自分类Dev

检查哪个日期最接近今天

来自分类Dev

与最接近的日期相对应的查找值

来自分类Dev

使用R测试日期是否出现在多个日期范围内

来自分类Dev

在日期时间列表中查找最接近的日期

来自分类Dev

如果日期等于某个日期,则查找最接近的值

来自分类Dev

在日期列表中查找最接近的过去日期

Related 相关文章

  1. 1

    用JavaScript最接近的日期和时间

  2. 2

    日期和时间最接近匹配excel

  3. 3

    Symfony 3从现在开始寻找最接近的日期

  4. 4

    日期功能可确定给定日期和日期的最接近日期

  5. 5

    按最接近现在但不是旧日期的日期对列表进行排序

  6. 6

    查找最接近的日期(javascript)

  7. 7

    获取最接近sysdate的日期

  8. 8

    查找最接近的日期(javascript)

  9. 9

    如何显示最接近所选日期的日期

  10. 10

    部分日期(月份和日期)出现在一个范围中的次数及其星期几

  11. 11

    使用Java流计算日期的出现在项目列表

  12. 12

    如何选择出现在不同日期的 IP 地址?

  13. 13

    日期选择器出现在模态类后面

  14. 14

    计算leap年中没有“额外”日期的日期之间的天数

  15. 15

    给定日期和星期几,找到将来的最接近日期

  16. 16

    使用Noda Time查找与本地日期和时区最接近的有效全球日期

  17. 17

    按与已经发生和将发生的日期最接近的日期排序

  18. 18

    对于表a中的每个记录,返回表b中具有最接近但现在大于现在的日期的记录NOW()

  19. 19

    SQL语句匹配最接近的日期?

  20. 20

    从列表中获取最接近的日期时间

  21. 21

    检查哪个日期最接近今天

  22. 22

    SQL按日期获取最接近的值

  23. 23

    Laravel在最接近今天的前端显示日期

  24. 24

    检查哪个日期最接近今天

  25. 25

    与最接近的日期相对应的查找值

  26. 26

    使用R测试日期是否出现在多个日期范围内

  27. 27

    在日期时间列表中查找最接近的日期

  28. 28

    如果日期等于某个日期,则查找最接近的值

  29. 29

    在日期列表中查找最接近的过去日期

热门标签

归档