最近项目中有用到本月所有的周六,周日,特此分享一下!

算法思路:写一个循环,条件为本月开始日期、本月截至日期,通过循环获取第一个周六,加一天就是周日,每增加六天就是下一个周六,依次类推,循环到月末

代码如下:

            //计算本月有哪些天是周六,周日
//本月开始日期
var starMoth = DateTime.Now.AddDays(-DateTime.Now.Day + 1).Date;
//本月截至日期
var stopMoth = starMoth.AddMonths(1).AddDays(-1).Date;
var listSaturday = new List<DateTime>();
var listSunday = new List<DateTime>();
var temp = starMoth;
while (temp <= stopMoth)
{
if (temp.DayOfWeek == DayOfWeek.Saturday && temp <= stopMoth)
{
listSaturday.Add(temp.Date);
if (temp.AddDays(1).Date <= stopMoth)
{
listSunday.Add(temp.AddDays(1));
}
temp = temp.AddDays(6);
}
else
{
temp = temp.AddDays(1);
}
}
Console.WriteLine("本月周六--");
listSaturday.ForEach(n => Console.WriteLine(n.Date));
Console.WriteLine("本月周日--");
listSunday.ForEach(n => Console.WriteLine(n.Date));
Console.ReadKey();

  运行结果:

c#获取本月有哪些周六、周日的更多相关文章

  1. 本月周六周日LIST集合

    最近项目中有用到本月所有的周六,周日,特此分享一下! 算法思路:写一个循环,条件为本月开始日期.本月截至日期,通过循环获取第一个周六,加一天就是周日,每增加六天就是下一个周六,依次类推,循环到月末 代 ...

  2. [Java] 获取本月周次和日期时间段信息

    package com.wdcloud.monitoring.common; import java.text.SimpleDateFormat; import java.util.ArrayList ...

  3. C#去掉周六周日的算法

    /// <summary> /// 用来获取工作日(不含周六周日) /// </summary> /// <param name="dtSub"> ...

  4. WPF 自定义Calendar样式(日历样式,周六周日红色显示)

    一.WPF日历控件基本样式 通过Blend获取到Calendar需要设置的三个样式CalendarStyle.CalendarButtonStyle.CalendarDayButtonStyle.Ca ...

  5. SQL取出 所有周六 周日的日期

    SQL取出 所有周六 周日的日期 create table SatSun([id] int identity(1,1),[date] datetime,[weekday] char(6)) go de ...

  6. java获取本月开始时间和结束时间、上个月第一天和最后一天的时间以及当前日期往前推一周、一个月

    import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.uti ...

  7. js获取本月、三个月、今年的日期插件dateHelp

    最近看了一些关于面向对象的知识,最近工作中在做统计查询的时候需要用到本月.近三个月.今年的日期范围,所以下面用用面向对象的思想写了一个获取日期的插件,大家可以借鉴使用. 直接通过new DateHel ...

  8. mysql获取当前日期的周一和周日的日期

    ,,date_format(curdate(),)//获取当前日期 在本周的周一 的日期 ,,date_format(curdate(),)//获取当前日期 在本周的周日 的日期

  9. JS 获取本月第一天零点时间戳并转化成yy-mm-dd

    JS 获取本月第一天零点时间戳并转化成yy-mm-dd 格式 <!DOCTYPE html> <html> <head> <meta charset=&quo ...

随机推荐

  1. 微信小程序:自定义导航栏

    在小程序开发的时候会遇到一些页面不需要头部导航,或像淘宝的商品详情一样自定义的导航栏.那先要清楚这导航可不能写死,每种手机的导航都各不相同. 一.在app.json的window对象中定义导航的样式: ...

  2. Docs-.NET-C#-指南-语言参考-预处理器指令:#if 预处理指令

    ylbtech-Docs-.NET-C#-指南-语言参考-预处理器指令:#if 预处理指令 1.返回顶部 1. #if(C# 参考) 2018/06/30 如果 C# 编译器遇到 #if 指令,最终是 ...

  3. 利用pathMeasure实现路径动画

    package com.loaderman.customviewdemo; import android.animation.ValueAnimator; import android.content ...

  4. 优雅编写Python3 的62个小贴士

    iterable技巧 ▍1.创建一个数字序列(从0到10,间隔为2)   >>> range(0,10,2)[0, 2, 4, 6, 8] ▍2.对一串数字求和(从0到10,间隔为2 ...

  5. web自动化-selenium+Chrome驱动国内下载地址+驱动对应Chrome版本号

    selenium各版本下载地址 http://selenium-release.storage.googleapis.com/index.html 国内下载:http://npm.taobao.org ...

  6. 浏览器打印出一段unicode码,汉字无法正常显示

    处理办法:http://tool.chinaz.com/tools/unicode.aspx:unicode转中文就可以啦

  7. php开启多线程下载

    php开启多线程下载 <pre><?php/** * 多进程批量下载文件(使用php curl_multi_exec实现) * Date: 2017-07-16 * Author: ...

  8. C++操作文件行(读取,删除,修改指定行)

    /******************************************************** Copyright (C), 2016-2018, FileName: main A ...

  9. go 函数闭包

    Go 函数可以是闭包的.闭包是一个函数值,它来自函数体的外部的变量引用. 函数可以对这个引用值进行访问和赋值:换句话说这个函数被“绑定”在这个变量上. 例如,函数 adder 返回一个闭包.每个闭包都 ...

  10. 少儿编程Scratch第四讲:射击游戏的制作,克隆的奥秘

    上周的宇宙大战射击游戏中,我们只完成了宇宙飞船发射子弹的部分.还未制作敌对方.这周制作了敌方-飞龙,飞龙随机在屏幕上方出现,如果被子弹打中,则得分,飞龙和子弹都消失. 敌方:飞龙:计分. 目的 目的: ...