C#如何计算传入的时间距离今天的时间差的实例分享


本文摘自PHP中文网,作者黄舟,侵删。

C#如何计算传入的时间距离今天的时间差的实例分享

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

/// <summary>

       /// 计算传入的时间距离今天的时间差

       /// </summary>

       /// <param name="dt"></param>

       /// <param name="yy"></param>

       /// <param name="mm"></param>

       /// <param name="dd"></param>

       public void GetCriminalYX(DateTime dt, out int yy, out int mm, out int dd)

       {

           DateTime now = DateTime.Now;

           yy = mm = dd = 0;

           if (dt.Year > 9000 || dt.Year == 1900)

           {

               return;

           }

           if (dt <= now)

           {

               return;

           }

           StringBuilder str = new StringBuilder();

           int dt_Y = dt.Year;

           int dt_M = dt.Month;

           int dt_D = dt.Day;

           int now_Y = DateTime.Now.Year;

           int now_M = DateTime.Now.Month;

           int now_D = DateTime.Now.Day;

           yy = dt_Y - now_Y;

           mm = dt_M - now_M;

           dd = 0;

int dt_M_SY = 0;

           if (dt_D < now_D)

           {

               mm -= 1;

               dt_M_SY = dt_M - 1;

               if (dt_M_SY == 0)

               {

                   dt_M_SY = 12;

               }

               if (dt_M_SY == 2)

               {

                   dt_M_SY = dt_Y % 4 == 0 ? 29 : 28;

               }

               else

               {

                   dt_M_SY = dt_M_SY == 2 || dt_M_SY == 4 || dt_M_SY == 6 || dt_M_SY == 9 || dt_M_SY == 11 ? 30 : 31;

               }

               dt_D += dt_M_SY;

           }

           dd = dt_D - now_D;

           if (mm < 0)

           {

               yy -= 1;

               mm += 12;

           }

       }

以上就是C#如何计算传入的时间距离今天的时间差的实例分享的详细内容!

相关阅读 >>

c#中值类型与引用类型的详细介绍

.net和c#有什么区别

浅谈.net中的浅拷贝和深拷贝

c#中noto sans字体支持韩文的实例教程

c#中关于逆变和协变的详解

c# webservice中访问http和https的wsdl以及生成配置节点的不同之处 (图)

.net中json数据进行序列化和反序列化操作分析

asp.net c#中application的用法教程

总结一些编码和设计原则实例

有关c#工厂模式简单讲解

更多相关阅读请进入《csharp》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...