编程乐趣:C#获取日期所在周、月份第一和最后一天
写了个小功能,需要用到以周为时间段,于是写了个获取周第一和最后一天的方法,获取月份的第一和最后一天就比较简单了。代码如下:
public class DateTimeTool
{
/// <summary>
/// 获取指定日期所在周的第一天,星期天为第一天
/// </summary>
/// <param name="dateTime"></param>
/// <returns></returns>
public static DateTime GetDateTimeWeekFirstDaySun(DateTime dateTime)
{
DateTime firstWeekDay = DateTime.Now; try
{
//得到是星期几,然后从当前日期减去相应天数
int weeknow = Convert.ToInt32(dateTime.DayOfWeek); int daydiff = (-1) * weeknow; firstWeekDay = dateTime.AddDays(daydiff);
}
catch { } return firstWeekDay;
} /// <summary>
/// 获取指定日期所在周的第一天,星期一为第一天
/// </summary>
/// <param name="dateTime"></param>
/// <returns></returns>
public static DateTime GetDateTimeWeekFirstDayMon(DateTime dateTime)
{
DateTime firstWeekDay = DateTime.Now; try
{
int weeknow = Convert.ToInt32(dateTime.DayOfWeek); //星期一为第一天,weeknow等于0时,要向前推6天。
weeknow = (weeknow == 0 ? (7 - 1) : (weeknow - 1)); int daydiff = (-1) * weeknow; firstWeekDay = dateTime.AddDays(daydiff);
}
catch { } return firstWeekDay;
} /// <summary>
/// 获取指定日期所在周的最后一天,星期六为最后一天
/// </summary>
/// <param name="dateTime"></param>
/// <returns></returns>
public static DateTime GetDateTimeWeekLastDaySat(DateTime dateTime)
{
DateTime lastWeekDay = DateTime.Now; try
{
int weeknow = Convert.ToInt32(dateTime.DayOfWeek); int daydiff = (7 - weeknow) - 1; lastWeekDay = dateTime.AddDays(daydiff); }catch { } return lastWeekDay;
} /// <summary>
/// 获取指定日期所在周的最后一天,星期天为最后一天
/// </summary>
/// <param name="dateTime"></param>
/// <returns></returns> public static DateTime GetDateTimeWeekLastDaySun(DateTime dateTime)
{
DateTime lastWeekDay = DateTime.Now; try
{
int weeknow = Convert.ToInt32(dateTime.DayOfWeek); weeknow = (weeknow == 0 ? 7 : weeknow); int daydiff = (7 - weeknow); lastWeekDay = dateTime.AddDays(daydiff);
}
catch { } return lastWeekDay;
} /// <summary>
/// 获取指定日期的月份第一天
/// </summary>
/// <param name="dateTime"></param>
/// <returns></returns>
public static DateTime GetDateTimeMonthFirstDay(DateTime dateTime)
{
if (dateTime == null)
{
dateTime = DateTime.Now;
} return new DateTime(dateTime.Year, dateTime.Month, 1);
} /// <summary>
/// 获取指定月份最后一天
/// </summary>
/// <param name="dateTime"></param>
/// <returns></returns>
public static DateTime GetDateTimeMonthLastDay(DateTime dateTime)
{
int day = DateTime.DaysInMonth(dateTime.Year, dateTime.Month); return new DateTime(dateTime.Year, dateTime.Month, day);
}
}
编程乐趣:C#获取日期所在周、月份第一和最后一天的更多相关文章
- c# 获取某日期所在周的第一天和最后一天
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace WyfC ...
- c# 获取某日期所在周的第一天和最后一天(转)
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace WyfC ...
- [PHP学习教程 - 日期/时间]001.月份第一天&最后一天(Month First Day & Last Day)
引言:在时间处理上,对于前/后台人性化的展示当前月份最大天数,这个是网站必须要处理的一个方面.但通常这一块会由第三方类库直接包装,这里我们做一个简单的Mark. 今天,我们就为大家提供一个函数,获得指 ...
- JS 获取当天所在月的第一天的日期,最后一天日期,所在周的每天的日期,时间,所在每月日期,时间的计算
/** * 获取当天所在月的最后一天日期,和下一个月的第一天日期 * 调用getMonthDay(d), d默认值为01,d为要设置成的day: */ const getMonthMaxDay = ( ...
- MSSQL 获取指定日期所在星期的第一天和最后一天日期 获取指定日期坐在月的第一天和最后一天
ufn_GetWeekFirstAndEndDay 获取指定日期所在星期的第一天和最后一天日期 ALTER FUNCTION [dbo].[ufn_GetWeekFirstAndEndDay]( ...
- Java获取某年某周的第一天
Java获取某年某周的第一天 1.设计源码 FirstDayOfWeek.java: /** * @Title:FirstDayOfWeek.java * @Package:com.you.freem ...
- js 获取当前日期所在周的周一
function week(date,n) { var checkDate = StringToDate(date); checkDate.setDate(checkDate.getDate() + ...
- js获取某个日期所在周周一的日期
第一次写,做个小笔记. 第一步:获取该日期的星期数: 第二步:在该日期上减去他的星期数再减1,(注:星期日获取到的星期数是0): 下面是具体代码: function GetMonday(dd) { v ...
- PHP获得指定日期所在月的第一天和最后一天
function getdays($day){ $firstday = date('Y-m-01',strtotime($day)); $lastday = date('Y-m-d',strtotim ...
随机推荐
- SSH深度历险记(八) 剖析SSH核心原则+Spring依赖注入的三种方式
于java发育.一类程序猿必须依靠类的其他方法,它是通常new依赖类的方法,然后调用类的实例,这样的发展问题new良好的班统一管理的例子.spring提出了依赖注入的思想,即依赖类不由程 ...
- SQL Server中TempDB管理(version store的逻辑结构)
原文:SQL Server中TempDB管理(version store的逻辑结构) 原文来自: http://blogs.msdn.com/b/sqlserverstorageengine/arch ...
- hosts目录位置
C:\WINDOWS\system32\drivers\etc 版权声明:本文博客原创文章,博客,未经同意,不得转载.
- dirname
dirname 命令来删除文件路径中最后一个/以及一些背后.当文件通常能够得到一个文件夹. 实例: dean@dean-Latitude-3330:~$ dirname /usr/bin/ /usr ...
- POJ--2289--Jamie's Contact Groups【二分图的多个匹配+二分法答案】
链接:id=2289">http://poj.org/problem?id=2289 意甲冠军:有n个人,m个分组,每一个人能够分配到一些组别.问怎样分能使得人数最多的组别人数最少. ...
- 在CMD命令行和PowerShell中实现复制粘贴功能
在CMD命令行和PowerShell中实现复制粘贴功能 常常使用命令行或者PowerShell的朋友肯定会遇到这样的情况:粘贴文本非常easy,右键--选择粘贴就可以,可是想要复制命令 ...
- Advanced Installer 9.8打包实录
原文 Advanced Installer 9.8打包实录 主要介绍:(1)创建工程,(2)创建快捷方式及其图标(3)卸载设置 创建工程(.net为例): 工程创建完成....接下来进行简单设置 开始 ...
- JavaEE(15) - JPA实体继承
1. 实体继承映射的三种策略 #1. 整个类层次对应一张表 #2. 连接子类 #3. 每个具体类对应一张表 2. 使用抽象实体 3. 使用非实体父类 4. 重定义子类实体的外键列 ---------- ...
- JavaScript中五种常见运算符
一. in运算符 in运算符希望它的左操作数是一个字符串或可以转换为字符串,希望它的右操作数是一个对象.如果右侧的对象拥有一个名为左操作数值的属性名,那么表达式返回true.例如: var point ...
- 【年终分享】彩票数据预测算法(一):离散型马尔可夫链模型实现【附C#代码】
原文:[年终分享]彩票数据预测算法(一):离散型马尔可夫链模型实现[附C#代码] 前言:彩票是一个坑,千万不要往里面跳.任何预测彩票的方法都不可能100%,都只能说比你盲目去买要多那么一些机会而已. ...