C#时间问题

原创 2017年01月03日 15:25:27
DateTime dt = DateTime.Now;  //当前时间
DateTime startWeek = dt.AddDays(1 - Convert.ToInt32(dt.DayOfWeek.ToString("d")));  //本周周一
DateTime endWeek = startWeek.AddDays(6);  //本周周日


DateTime startMonth = dt.AddDays(1 - dt.Day);  //本月月初
DateTime endMonth = startMonth.AddMonths(1).AddDays(-1);  //本月月末//


endMonth = startMonth.AddDays((dt.AddMonths(1) - dt).Days - 1);  //本月月末
DateTime startQuarter = dt.AddMonths(0 - (dt.Month - 1) % 3).AddDays(1 - dt.Day);  //本季度初
DateTime endQuarter = startQuarter.AddMonths(3).AddDays(-1);  //本季度末


DateTime startYear = new DateTime(dt.Year, 1, 1);  //本年年初
DateTime endYear = new DateTime(dt.Year, 12, 31);  //本年年末至于昨天、明天、上周、上月、上季度、上年度等等,


var 上周一 = DateTime.Now.AddDays(Convert.ToInt32(1 - Convert.ToInt32(DateTime.Now.DayOfWeek)) - 7);        //上周一
var 上周末 = DateTime.Now.AddDays(Convert.ToInt32(1 - Convert.ToInt32(DateTime.Now.DayOfWeek)) - 7).AddDays(6);     //上周末(星期日)//下周
var 下周一 = DateTime.Now.AddDays(Convert.ToInt32(1 - Convert.ToInt32(DateTime.Now.DayOfWeek)) + 7);        //下周一
var 下周末 = DateTime.Now.AddDays(Convert.ToInt32(1 - Convert.ToInt32(DateTime.Now.DayOfWeek)) + 7).AddDays(6); //下周末 


DateTime.Parse(DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + "1").AddMonths(1).AddDays(-1).ToShortDateString();//最后一天
//巧用C#里ToString的字符格式化更简便
DateTime.Now.ToString("yyyy-MM-01");//本月初
DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(1).AddDays(-1).ToShortDateString();//本月最后一天
DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(-1).ToShortDateString();//上个月1号
DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString();//上个月最后一天
DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(1).ToShortDateString();// 下个月1号
DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(2).AddDays(-1).ToShortDateString();//下下月最后一天
DateTime.Now.AddDays(7).ToShortDateString();//7天后
DateTime.Now.AddDays(-7).ToShortDateString();//7天前
DateTime.Now.Date.ToShortDateString();//本年度,用ToString的字符格式化我们也很容易地算出本年度的第一天和最后一天


DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).ToShortDateString();//本年度第一天
DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(1).AddDays(-1).ToShortDateString();//本年度最后一天


DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(-1).ToShortDateString(); //上年度第一天, 
DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddDays(-1).ToShortDateString();//上年度第最后一天, 


DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(1).ToShortDateString();  //下年度第一天
DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(2).AddDays(-1).ToShortDateString();//下年度最后一天
//本季度,
DateTime.Now.AddMonths(0 - ((DateTime.Now.Month - 1) % 3)).AddDays(1 - DateTime.Now.Day);//本季度第一天; 
DateTime.Parse(DateTime.Now.AddMonths(3 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString();//本季度的最后一天
DateTime.Now.AddMonths(3 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01");//下季度的第一天
DateTime.Parse(DateTime.Now.AddMonths(6 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString();// 下季度最后一天


DateTime.Now.AddMonths(-3 - ((DateTime.Now.Month - 1) % 3)).AddDays(1 - DateTime.Now.Day);// 上季度第一天
DateTime.Now.AddMonths(0 - ((DateTime.Now.Month - 1) % 3)).AddDays(1 - DateTime.Now.Day).AddDays(-1).ToShortDateString();// 上季度最后一天
版权声明:本文为博主原创文章,未经博主允许不得转载。

LED样式的jQuery时间倒计时插件

一款LED样式的jQuery时间倒计时插件,可分别显示当前时间、新年倒计时、圣诞倒计时、随机数字、随机字母等的LED样式效果,颜色、字体等样式均可自由调整设置,喜欢的童鞋请收下吧。 页面的h...
  • u010810136
  • u010810136
  • 2017年08月03日 16:12
  • 221

过桥时间最短问题

【问题描述】       n个人要晚上过桥,在任何时候最多两个人一组过桥,每组要有一只手电筒。在这n个人中只有一个手电筒能用,因此要安排以某种往返的方式来返还手电筒,使更多的人可以过桥。       ...
  • L1505624
  • L1505624
  • 2014年03月08日 13:46
  • 1933

linux编程中与时间相关的问题总结

[TOC]一、与时间相关的概念 GMT:Greenwich Mean Time,格林尼治平均时。格林尼治标准时间是19世纪中叶大英帝国的基准时间,同时也是事实上的世界基准时间。 UTC:...
  • lidonghat
  • lidonghat
  • 2016年03月22日 00:25
  • 1118

ELK 时间问题

这两天在玩ELK .掉进了不少坑里。还在慢慢摸索。记录下学习的过程,可能会有错误,欢迎各位指正。说说时间的问题。先来说说日志文件log 。分语言、服务器 tomcat ,IIS 。 Java 的tom...
  • u013092590
  • u013092590
  • 2016年09月09日 17:17
  • 1912

MongoDB 时区问题

MongoDB存储时间类型数据时,都是先转换为UTC时间,然后存储到数据库中 下面我们来看一个例子: 如上图 new Date() 直接返回带有本地时区的当前时间...
  • Erica_1230
  • Erica_1230
  • 2015年01月09日 10:07
  • 1777

linux下的时间问题

1、date: 语法格式:date [-u] [-d datestr] [-s datestr] [--utc] [--universal] [--date=datestr] [--set=date...
  • wangjie5540
  • wangjie5540
  • 2013年10月31日 16:21
  • 338

死亡时间问题

某人在凌晨2:30被发现已死亡。警察在凌晨3点来到现场后测量尸体温度为29.44摄氏度,4点又测量一遍温度为25.56摄氏度。已知尸体的冷却速度T 跟室温R 之间的差(即T-R)成正比,因此尸体温度T...
  • MarsJohn
  • MarsJohn
  • 2017年02月07日 16:35
  • 502

FFMPEG中的时间问题

接单 介绍下 ffmepg中的时间
  • lcalqf
  • lcalqf
  • 2014年12月17日 15:15
  • 6274

Hibernate时间问题

实体类里面如果有时间字段,并且需要形如yyyy-mm-dd HH:mm:ss这样的时间格式,那么时间字段的getter方法上要加上@Temporal(TemporalType.TIMESTAMP)注解...
  • u014015324
  • u014015324
  • 2015年04月08日 21:57
  • 231

FFMPEG中的时间问题

对于一个电影,帧是这样来显示的:I B B P。现在我们需要在显示B帧之前知道P帧中的信息。因此,帧可能会按照这样的方式来存储:IPBB。这就是为什么我们会有一个解码时间戳和一个显示时间戳的原因。解码...
  • XscKernel
  • XscKernel
  • 2016年09月01日 17:53
  • 840
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C#时间问题
举报原因:
原因补充:

(最多只允许输入30个字)