开发者社区> 老朱教授> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

c#的DateTime.Now函数详解

简介:
+关注继续查看

 //2008年4月24日
     System.DateTime.Now.ToString("D");
     //2008-4-24
     System.DateTime.Now.ToString("d");
     //2008年4月24日 16:30:15
     System.DateTime.Now.ToString("F");
     //2008年4月24日 16:30
     System.DateTime.Now.ToString("f");
     //2008-4-24 16:30:15
     System.DateTime.Now.ToString("G");
     //2008-4-24 16:30
     System.DateTime.Now.ToString("g");
     //16:30:15
     System.DateTime.Now.ToString("T");
     //16:30
     System.DateTime.Now.ToString("t");
     //2008年4月24日 8:30:15
     System.DateTime.Now.ToString("U");
     //2008-04-24 16:30:15Z
     System.DateTime.Now.ToString("u");
     //4月24日
     System.DateTime.Now.ToString("m");
     System.DateTime.Now.ToString("M");
     //Tue, 24 Apr 2008 16:30:15 GMT
     System.DateTime.Now.ToString("r");
     System.DateTime.Now.ToString("R");
     //2008年4月
     System.DateTime.Now.ToString("y");
     System.DateTime.Now.ToString("Y");
     //2008-04-24T15:52:19.1562500+08:00
     System.DateTime.Now.ToString("o");
     System.DateTime.Now.ToString("O");
     //2008-04-24T16:30:15
     System.DateTime.Now.ToString("s");
     //2008-04-24 15:52:19

  System.DateTime.Now.ToString("yyyyMMddHHmmssffff");
//200804241556487812 
//YYYYMMDDHHmmssnnnn


     System.DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:ffff");
     //2008年04月24 15时56分48秒
     System.DateTime.Now.ToString("yyyy年MM月dd HH时mm分ss秒");
     //星期二, 四月 24 2008
     System.DateTime.Now.ToString("dddd, MMMM dd yyyy");
     //二, 四月 24 ’08
     System.DateTime.Now.ToString("ddd, MMM d \"’\"yy");
     //星期二, 四月 24
     System.DateTime.Now.ToString("dddd, MMMM dd");
     //4-08
     System.DateTime.Now.ToString("M/yy");
     //24-04-08
     System.DateTime.Now.ToString("dd-MM-yy");
    //字符型转换转为字符串
    12345.ToString("n");  //生成 12,345.00
    12345.ToString("C"); //生成 ¥12,345.00
    12345.ToString("e"); //生成 1.234500e+004
    12345.ToString("f4"); //生成 12345.0000
    12345.ToString("x"); //生成 3039 (16进制)
    12345.ToString("p"); //生成 1,234,500
     
//本年度销售额、本季度利润、本月新增客户 
   
//今天
     DateTime.Now.Date.ToShortDateString();
     //昨天,就是今天的日期减一
     DateTime.Now.AddDays(-1).ToShortDateString();
     //明天,同理,加一
     DateTime.Now.AddDays(1).ToShortDateString();
     //本周(要知道本周的第一天就得先知道今天是星期几,从而得知本周的第一天就是几天前的那一天,要注意的是这里的每一周是从周日始至周六止
     DateTime.Now.AddDays(Convert.ToDouble((0 - Convert.ToInt16(DateTime.Now.DayOfWeek)))).ToShortDateString();
     DateTime.Now.AddDays(Convert.ToDouble((6 - Convert.ToInt16(DateTime.Now.DayOfWeek)))).ToShortDateString();
     //如果你还不明白,再看一下中文显示星期几的方法就应该懂了
     
//由于DayOfWeek返回的是数字的星期几,我们要把它转换成汉字方便我们阅读,有些人可能会用switch来一个一个地对照,其实不用那么麻烦的             
     string[] Day = new string[]{ "星期日""星期一""星期二""星期三""星期四""星期五""星期六" };
     Day[Convert.ToInt16(DateTime.Now.DayOfWeek)];
     //上周,同理,一个周是7天,上周就是本周再减去7天,下周也是一样
     DateTime.Now.AddDays(Convert.ToDouble((0 - Convert.ToInt16(DateTime.Now.DayOfWeek))) - 7).ToShortDateString();
     DateTime.Now.AddDays(Convert.ToDouble((6 - Convert.ToInt16(DateTime.Now.DayOfWeek))) - 7).ToShortDateString();
     //下周
     DateTime.Now.AddDays(Convert.ToDouble((0 - Convert.ToInt16(DateTime.Now.DayOfWeek))) + 7).ToShortDateString();
     DateTime.Now.AddDays(Convert.ToDouble((6 - Convert.ToInt16(DateTime.Now.DayOfWeek))) + 7).ToShortDateString();
     //本月,很多人都会说本月的第一天嘛肯定是1号,最后一天就是下个月一号再减一天。当然这是对的
     
//一般的写法
     DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + "1"//第一天
     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();
     DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString();
     //下个月,加去一个月份
     DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(1).ToShortDateString();
     DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(2).AddDays(-1).ToShortDateString();
     //7天后
     DateTime.Now.Date.ToShortDateString();
     DateTime.Now.AddDays(7).ToShortDateString();
     //7天前
     DateTime.Now.AddDays(-7).ToShortDateString();
     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) % 22)).ToString("yyyy-MM-01");
     //同理,本季度的最后一天就是下季度的第一天减一
     DateTime.Parse(DateTime.Now.AddMonths(22 - ((DateTime.Now.Month - 1) %22)).ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString();
     //下季度,相信你们都知道了。。。。收工
     DateTime.Now.AddMonths(22 - ((DateTime.Now.Month - 1) % 22)).ToString("yyyy-MM-01");
     DateTime.Parse(DateTime.Now.AddMonths(6 - ((DateTime.Now.Month - 1) %22)).ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString();
     //上季度
     DateTime.Now.AddMonths(-22 - ((DateTime.Now.Month - 1) % 22)).ToString("yyyy-MM-01");
     DateTime.Parse(DateTime.Now.AddMonths(0 - ((DateTime.Now.Month - 1) %22)).ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString




本文转自94cool博客园博客,原文链接:http://www.cnblogs.com/94cool/archive/2011/06/09/2076555.html,如需转载请自行联系原作者


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
c#的DateTime.Now函数详解
原文:c#的DateTime.Now函数详解   //2008年4月24日 System.DateTime.Now.ToString("D");//2008-4-24 System.
529 0
C# DateTime和DateTime?格式化时间
DateTime:   DateTime?:
572 0
关于DateTime的转换
当函数需要一个DateTime类型的变量,但传入的值drselect["某列名"].ToString()输出来后,显示为20080501这个格式时,要注意这种格式不能转化为DateTime类型的变量,应该转化成2008-05-01这种形式就可以了。         代码:               DateTime dt = new DateTime();          
761 0
DateTime compare
DateTime t1 = new DateTime(100); DateTime t2 = new DateTime(20); if (DateTime.Compare(t1, t2) > 0) Console.
566 0
使用DateTime的ParseExact方法实现特殊日期时间的方法详解(转)
本篇文章是对使用DateTime的ParseExact方法实现特殊日期时间的方法进行了详细的分析介绍,需要的朋友参考下 今天遇到一个特别的需求,需要从下面的字符串中转换成一个DateTime对象: [07-13 15:50:42] .
728 0
将时间字符串格式化成DateTime的有趣事情
  最近老大要我将一个dateCalendar控件换成jQuery的datePicker控件,换了之后需要修改cs代码,我在格式化时间的时候遇到了很有趣的事情,就是,我无论用什么样的方式格式化字符串,它都会添加一个“星期几”进去,例如它会将“2012-08-11 8: 0:00"转换成“2012-08-11 星期六 8: 0:00”。
460 0
+关注
文章
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载