C# 时间计算
 
 今天、昨天、前天、明天
  class Program
    {
        static void Main(string[] args)
        {
            DateTime dt1=GetTodayZeroTime(DateTime.Now);
            Console.WriteLine("今天零点:{0}",dt1.ToString() );
            DateTime dt2 = GetYestodayZeroTime(DateTime.Now);
            Console.WriteLine("昨天零点:{0}", dt2.ToString());
            DateTime dt3 = GetDayBeforYestodayZeroTime(DateTime.Now);
            Console.WriteLine("前天零点:{0}", dt3.ToString());
            DateTime dt4 = GetTomorrowZeroTime(DateTime.Now);
            Console.WriteLine("明天零点:{0}", dt4.ToString());
            Console.ReadLine();
        }
        private static DateTime GetTodayZeroTime(DateTime datetime)
        {
            return new DateTime(datetime.Year, datetime.Month, datetime.Day);
        }
        private static DateTime GetYestodayZeroTime(DateTime datetime)
        {
            TimeSpan timespan = new TimeSpan(1, 0, 0, 0);
            DateTime yesdt = datetime.Subtract(timespan);
            return new DateTime(yesdt.Year, yesdt.Month, yesdt.Day);
        }
        private static DateTime GetDayBeforYestodayZeroTime(DateTime datetime)
        {
            TimeSpan timespan = new TimeSpan(2, 0, 0, 0);
            DateTime yesdt = datetime.Subtract(timespan);
            return new DateTime(yesdt.Year, yesdt.Month, yesdt.Day);
        }
        private static DateTime GetTomorrowZeroTime(DateTime datetime)
        {
            TimeSpan timespan = new TimeSpan(1, 0, 0, 0);
            DateTime yesdt = datetime.Add(timespan);
            return new DateTime(yesdt.Year, yesdt.Month, yesdt.Day);
        }
    }
 
本文来自网络上朋友们的帖子,这里进行了一个汇总

取一个月的最后一天日期

int   yy   =   2005; 
int   mm   =   11; 
int   Lastday   =   DateTime.DaysInMonth(yy,   mm);

另一种方法

int   year   =   2005; 
int   month   =   11; 
DateTime   dt   =   new   DateTime(year,month,1).AddMonths(1).AddDays(-1);

取某一天所在周的最后一天日期

String   date   =   "2007-09-27 "; 
SimpleDateFormat   sdf   =   new   SimpleDateFormat( "yyyy-MM-dd "); 
Calendar   calendar   =   new   GregorianCalendar(); 
calendar.setTime(sdf.parse(date)); 
calendar.set(Calendar.DAY_OF_WEEK,   calendar.getMaximum(Calendar.DAY_OF_WEEK)); 
System.out.println(sdf.format(calendar.getTime())); 
 
时间比较:
 
DateTime date1 = new DateTime(2009, 8, 1, 0, 0, 0);
DateTime date2 = new DateTime(2009, 8, 1, 12, 0, 0);
int result = DateTime.Compare(date1, date2);
string relationship;

if (result < 0)
   relationship = "is earlier than";
else if (result == 0)
   relationship = "is the same time as";         
else
   relationship = "is later than";

Console.WriteLine("{0} {1} {2}", date1, relationship, date2);
// The example displays the following output:
//    8/1/2009 12:00:00 AM is earlier than 8/1/2009 12:00:00 PM

时间比较:
    while (DateTime.Compare(dtBegin, dtEnd) <= 0)
            {
                // 
                //循环主体
                 //    
                dtBegin = dtBegin.AddHours(1);           //时间相加
            }
 时间相减:
  TimeSpan ts = endtime.Subtract(begintime).Duration();

C# 时间计算 今天、昨天、前天、明天 一个月的开始日期与结束日期的更多相关文章

  1. PHP计算一年有多少周,每周开始日期和结束日期

    一年有多个周,每周的开始日期和结束日期 参考代码一:[正在使用的版本] <?php header("Content-type:text/html;charset=utf-8" ...

  2. my97datepicker开始日期小于结束日期格式化时间精确届时分秒

    my97datepicker开始日期小于结束日期格式化时间精确到时分秒 一 , 需求: 结束时间 > 开始时间, 不符合的时间段不能选择.比如我选择开始日期是7月28,那结束的日期将只能从7月2 ...

  3. js根据当前日期 求一个月前 半年前 一年前的日期

    function p(s) {        return s < 10 ? '0' + s: s;}getlastmonth() function getlastmonth() {    va ...

  4. js获得昨天前天明天时间以及setDate()

    <script type="text/javascript"> function GetDateStr(AddDayCount) { var dd = new Date ...

  5. Linux shell 时间操作(取昨天 前天)

    1. 取今天时间 $date -d "now" +%Y-%m-%d 2. 取昨天时间 $date -d "yesterday" +%Y-%m-%d $date  ...

  6. bootstrap框架日期时间 开始日期和结束日期选择

    页面表单查询时,常要求要查询一个日期时间段内的数据,若采用bootstrap框架的datetimepicker插件来控制,需要了解怎么个用法:

  7. js计算当前日期上一个月和下一个月

    /**         * 获取上一个月         *         * @date 格式为yyyy-mm-dd的日期,如:2014-01-25         */        funct ...

  8. SqlServer取得一个月的所有有日期

    SqlServer的自定义函数可以分为三类但我只用过上面两类,可以称作标量函数和表值函数,区别只是返回数据的类型,表值函数返回的是一个虚拟表 SqlServer的函数在这里 因某种需求我写了一个这样的 ...

  9. 裸辞两个月,海投一个月,从Android转战Web前端的求职之路

    前言 看到这个标题的童鞋,可能会产生两种想法: 想法一:这篇文章是标题党 想法二:Android开发越来越不景气了吗?前端越来越火了吗? 我一向不喜欢标题党,标题中的内容是我的亲身经历.我是2016年 ...

随机推荐

  1. JAVA09异常处理之动手动脑问题

    动手动脑1:为什么不管是否有异常发生,finally语句块中的语句始终保证被执行? 我们在写代码时,如果finally块中的代码过多会导致字节码条数"膨胀",因为finally中的 ...

  2. Hbase关于Java常用API举例

    1. HBase相关对Admin操作的的API封装在HBaseAdmin中,封装了HBase常用操作的API 使用方法: pom.xml <!-- https://mvnrepository.c ...

  3. 使用 Sublime Text 2 开发 Unity3D 项目

    用 Sublime 已经有很长一段时间,很舒适,很贴心,根本停不下来.之前因为是开发页游,所以是用 AS3 开发,近段时间,新开了个手游项目,引擎方面选定了 Unity3D,老实说,之前没有太多的 3 ...

  4. MyBatis Generator 详解

    MyBatis Generator中文文档 MyBatis Generator中文文档地址:http://mbg.cndocs.tk/ 该中文文档由于尽可能和原文内容一致,所以有些地方如果不熟悉,看中 ...

  5. JS 面向对象、prototype原型的克隆

    JS中的phototype是JS中比较难理解的一个部分 本文基于下面几个知识点: 1 原型法设计模式 在.Net中可以使用clone()来实现原型法 原型法的主要思想是,现在有1个类A,我想要创建一个 ...

  6. 转发 XHTML 和 DOCTYPE 切换(MSDN)

    使用 Web 标准生成 ASP.NET 2.0 Web 站点 XHTML 和 DOCTYPE 切换 为 Web页指定 DOCTYPE 会影响浏览器呈现页的方式.Internet Explorer.Mo ...

  7. Javascript模块化规范

    Javascript模块化规范 一.前端js模块化由来与演变 CommonJS 原来叫 ServerJS,推出 Modules/1.0 规范后,在 Node.js 等环境下取得了很不错的实践.09年下 ...

  8. Excel学习技巧

    ctrl+R 初始化信息 ctrl+T 创建表列 ctrl+o 保存文件

  9. 网站优化之PHPCMS如何开启伪静态

    做为一名网站优化方面的工作,那么选择CMS系统的时候,有良好的网站优化功能就是一个好的CMS的标准之一,而系统是否支持伪静态,则是URL优化的工作之一,而PHPCMS是一款网站优化方面做得比较成功的C ...

  10. RP4412开发板烧写Ubuntu12.04失败原因分析解决

    Ubuntu烧写失败可能是卡的问题 问:用RP4412开发板,卡烧了光盘中的fastboot失败,现在如何补救呢? 答:INAND格式化,利用usb来升级啊. 也有文档,看升级文档. 问:这个是怎么回 ...