zoukankan      html  css  js  c++  java
  • 获取日期差除去双休

    主要思路:计算日期差过了几周,就用日期差除7得到周数,在判断开始日期和结束日期存在周末的情况,最终得到的结果=总日期差-周数*2-结束日期和开始日期所在周末的次数

    #region 计算除去周末的日期
                                var totleWeek = AllDays / 7; //经过的周数
                                var yuDay = totleWeek % 7;
                                if (yuDay == 0)   //正好整周
                                {
                                    days = AllDays - (totleWeek * 2);
                                }
                                else
                                {
                                    var weekDay = 0;
                                    var Week= 0; //多余的天数有几天是周六或者周日
                                    switch (start.DayOfWeek)
                                    {
                                        case DayOfWeek.Monday:
                                            weekDay = 1;
                                            break;
                                        case DayOfWeek.Tuesday:
                                            weekDay = 2;
                                            break;
                                        case DayOfWeek.Wednesday:
                                            weekDay = 3;
                                            break;
                                        case DayOfWeek.Thursday:
                                            weekDay = 4;
                                            break;
                                        case DayOfWeek.Friday:
                                            weekDay = 5;
                                            break;
                                        case DayOfWeek.Saturday:
                                            weekDay = 6;
                                            break;
                                        case DayOfWeek.Sunday:
                                            weekDay = 7;
                                            break;
                                    }
                                    if ((weekDay == 6 && yuDay >= 2) || (weekDay == 7 && yuDay >= 1) || (weekDay == 5 && yuDay >= 3) || (weekDay == 4 && yuDay >= 4) || (weekDay == 3 && yuDay >= 5) || (weekDay == 2 && yuDay >= 6))
                                    {
                                        Week = 2;
                                    }
                                    if ((weekDay == 6 && yuDay < 1) || (weekDay == 7 && yuDay < 5) || (weekDay == 5 && yuDay < 2) || (weekDay == 4 && yuDay < 3) || (weekDay == 3 && yuDay < 4) || (weekDay == 2 && yuDay < 5) || (weekDay == 1 && yuDay < 6))
                                    {
                                        Week = 1;
                                    }
                                    days = AllDays - (totleWeek * 2) - Week;
                                }
    #endregion
  • 相关阅读:
    Intellij IDEA创建Maven Web项目<转>
    Spring事件监听Demo
    maven打包源码<转>
    枚举类转成json
    Java多线程编程中Future模式的详解<转>
    细数JDK里的设计模式<转>
    设计模式-观察者模式(下)<转>
    Sqlserver自定义函数Function
    sqlSQL2008如何创建定时作业
    JSON 序列化和反序列化——JavaScriptSerializer实现
  • 原文地址:https://www.cnblogs.com/lk2017/p/12161335.html
Copyright © 2011-2022 走看看