C#中周,月,第几周,周开始结束时间de方法总结
1、c#获取当前时间是本年的第几周,本月的第几周
private static int getWeekNumInMonth(DateTime daytime)
{
int dayInMonth = daytime.Day;
//本月第一天
DateTime firstDay = daytime.AddDays(1 - daytime.Day);
//本月第一天是周几
int weekday = (int)firstDay.DayOfWeek == 0 ? 7 : (int)firstDay.DayOfWeek;
//本月第一周有几天
int firstWeekEndDay = 7 - (weekday - 1);
//当前日期和第一周之差
int diffday = dayInMonth - firstWeekEndDay;
diffday = diffday > 0 ? diffday : 1;
//当前是第几周,如果整除7就减一天
int WeekNumInMonth = ((diffday % 7) == 0
? (diffday / 7 - 1)
: (diffday / 7)) + 1 + (dayInMonth > firstWeekEndDay ? 1 : 0);
return WeekNumInMonth;
}
2、获取本年的第几周:
GregorianCalendar gc = new GregorianCalendar();
int weekOfYear = gc.GetWeekOfYear(DateTime.Now, CalendarWeekRule.FirstDay, DayOfWeek.Monday);
Console.WriteLine(weekOfYear);
Console.ReadLine();
3、c#得到本月有几周和这几周的起止时间示例代码
/// <summary>
/// 获得本月有几周
/// </summary>
/// <param name="a"></param>
/// <returns></returns>
public void NumWeeks(DateTime dt)
{
//年
int year = dt.Year;
//月
int month = dt.Month;
//当前月第一天
DateTime weekStart = new DateTime(year, month, 1);
//该月的最后一天
DateTime monEnd = weekStart.AddMonths(1).AddDays(-1);
int i = 1;
//当前月第一天是星期几
int dayOfWeek = Convert.ToInt32(weekStart.DayOfWeek.ToString("d"));
//该月第一周结束日期
DateTime weekEnd = dayOfWeek == 0 ? weekStart : weekStart.AddDays(7 - dayOfWeek); richTextBox2.Text += "第" + i + "周起始日期: " + weekStart.ToShortDateString() + " 结束日期: " + weekEnd.ToShortDateString() + "\n"; //当日期小于或等于该月的最后一天
while (weekEnd.AddDays(1) <= monEnd)
{
i++;
//该周的开始时间
weekStart = weekEnd.AddDays(1);
//该周结束时间
weekEnd = weekEnd.AddDays(7) > monEnd ? monEnd : weekEnd.AddDays(7); richTextBox2.Text += "第" + i + "周起始日期: " + weekStart.ToShortDateString() + " 结束日期: " + weekEnd.ToShortDateString() + "\n";
} richTextBox2.Text += year + "年" + month + "月共有" + i + "周\n";
}
4、My97DatePicker日期插件的常用功能说明
http://jingyan.baidu.com/article/e6c8503c7244bae54f1a18c7.html
以上方法均为实际使用,亲测!!!
总结推荐下
各方法出处省略。
C#中周,月,第几周,周开始结束时间de方法总结的更多相关文章
- java获取当前年、半年、季度、月、日、小时 开始结束时间等
import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; /** * 获取 当前年.半年 ...
- java获取当前时间的年周月季度等的开始结束时间
import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; /** * Created b ...
- Flex自定义组件开发之日周月日期选择日历控件
原文:Flex自定义组件开发之日周月日期选择日历控件 使用过DateField的我们都知道,DateField 控件是用于显示日期的文本字段,字段右侧带有日历图标.当用户在控件边框内的 ...
- 2017年4月16日 一周AnswerOpenCV佳作赏析
2017年4月16日 一周AnswerOpenCV佳作赏析 1.HelloHow to smooth edge of text in binary image, based on threshold. ...
- java获取本月开始时间和结束时间、上个月第一天和最后一天的时间以及当前日期往前推一周、一个月
import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.uti ...
- pg按日,周,月进行数据统计
pg数据库按周,月统计数据 SELECT date_trunc('WEEK', insert_time) as insertDate, SUM(data_increment) as dataTotal ...
- ORACLE取周、月、季、年的開始时间和结束时间
1 取周的開始时间和结束时间 取周的開始时间.以星期一为開始. SQL>SELECT TRUNC(TO_DATE('2013-11-25 10:31:11','YYYY ...
- Oracle 获取当前日期是月的第几周
函数FUNC_GET_WEEKOFMONTH: IW 是年的自然周: WW是年的第一天起开始算7天为一周 FUNCTION FUNC_GET_WEEKOFMONTH (V_PSD DATE) RETU ...
- MySql查询日周月
常用计算日期的函数 日 date(日期) = CURDATE() 自然周 YEARWEEK(date_format(日期,'%Y-%m-%d') , 1) = YEARWEEK(now() , 1) ...
随机推荐
- 常用的SharePoint命令行代码
网站备份: Backup-SPSite http://sp2013 -Path C:\sp.bak 网站还原: Restore-SPSite http://sp2013 -Path C:\sp.bak ...
- OC 知识:Foundation 框架及相关类详尽总结
本文用来介绍Foundation框架的相关知识,以及Foundation框架所提供类的相关知识总结. 1. 框架介绍 框架是由很多类.方法.函数和文档按照一定的逻辑组织起来的集合,以使开发程序变得更加 ...
- rpm-yum_install_software
rpm -ivh software_name安装软件 打印详情rpm -q software_name查询软件是否安装rpm -ql software_name查询安装目录rpm -e softwar ...
- ARM汇编关键知识点总结(转)
1.LDR R1, =COUNT 意思是将 COUNT 变量的地址放到 R1中LDR R1, COUNT 意思是将 COUNT 变量地址里面的内容赋给 R1 2. Load-Store 结构——这个应 ...
- Noip前的大抱佛脚----考场配置
(global-linum-mode t) (global-set-key (kbd "RET") 'newline-and-indent) (setq default-tab-w ...
- 传统路由和OVS区别
本文主要描述了一种将三层路由变成二层交换转发(以及二层转发变成三层路由)的实现方式,以应对OVS(OpenFlow)跨网段路由复杂的问题:当然技术本身是客观的,具体应用还要看场景. 随着SDN技术不断 ...
- [FJOI2015]火星商店问题
[FJOI2015]火星商店问题 神仙线段树分治...不过我不会. 这题用线段树套可持久化Trie还是能写的. 常数有点大,洛谷垫底水平. // luogu-judger-enable-o2 #inc ...
- JS字符串补全方法padStart()和padEnd()
背景: var t = new Date().getMonth() + 1; // t ===> 7,没有0,怎么展示成下面的样子? // 2018-07-23 解决上述问题的一个思路: // ...
- 快速搭建属于自己的mongodb数据库
前言 MongoDB 是一个基于分布式文件存储的数据库.由C++语言编写,支持Windows,Linux,OSX,Solaris等平台,默认端口为27017,是一个效率非常高的nosql数据库. 我的 ...
- 「功能笔记」Linux常用Shell命令(终端命令)备忘录
长期更新,空置.缺漏的部分会逐渐补上.未指明时,均为GNU版本. 文件命令 基础操作 ls 默认显示非隐藏文件.以文件名进行排序.文件名有颜色(蓝色文件夹.白色一般文件.绿色可执行文件). Cheat ...