在平时编码中,经常要把日期转换成各种各样的形式输出或保持,今天专门做了个测试,发现DateTime的ToString()方法居然有这么多的表现形式,和大家一起分享.

DateTime time=DateTime.Now;   //2010-5-28  11:22:02.4552691 星期五

time.To("y")                         "2010年5月"

time.To("yy")                       "10"

time.To("yyy")                     "2010"

time.To("yyyy")                    "2010"

time.To("Y")                        "2010年5月"

time.To("m")                       "5月28日"

time.To("mm")                     "22"

time.To("mmm")                  "22"

time.To("mmmm")               "22"

time.To("M")                      "5月28日"

time.To("MM")                   "05"

time.To("MMM")                "五月"

time.To("MMMM")             "五月"

time.To("d")                         "2010-5-28"

time.To("dd")                       "28"

time.To("ddd")                     "五"

time.To("dddd")                   "星期五"

time.To("D")                        "2010年5月28日"

time.To("hh")                        "11"

time.To("hhh")                      "11"

time.To("hhhh")                     "11"

time.To("HH")                      "11"

time.To("HHH")                    "11"

time.To("HHHH")                 "11"

time.To("s")                         "2010-05-28T11:22:02"

time.To("ss")                       "02"

time.To("sss")                      "02"

time.To("ssss")                    "02"

time.To("f")                         "2010年5月28日 11:22"

time.To("ff")                        "45"

time.To("fff")                       "455"

time.To("ffff")                      "4552"

time.To("t")                         "11:22"

time.To("tt")                        "AM"

time.To("ttt")                       "AM"

time.To("tttt")                      "AM"

time.To("T")                        "11:22:02"

time.To("zz")                       "+08"

time.To("zzz")                      "+08:00"

time.To("zzzz")                    "+08:00"

time.To("r")                         "Fri, 28 May 2010 11:22:02 GMT"

time.To("R")                        "Fri, 28 May 2010 11:22:02 GMT"

time.To("u")                         "2010-05-28 11:22:02Z"

time.To("U")                        "2010年5月28日 3:11:02"

time.To("o")                         "2010-05-28T11:22:02.4552691+08:00"

time.To("O")                        "2010-05-28T11:22:02.4552691+08:00"

time.To("u")                         "2010-05-28 11:22:02Z"

time.To("U")                        "2010年5月28日 3:11:02"

time.To("g")                         "2010-5-28 11:22"

time.To("gg")                       "公元"

time.To("ggg")                     "公元"

time.To("gggg")                   "公元"

time.To("G")                        "2010-5-28 11:22:02"

能够取出单一的某个部分的字符串可以组合起来使用,如:

time.ToString("gg yyyy/MM/dd hh:mm:ss dddd")              "公元 2010-05-28 11:56:26 星期五"

因为此处gg,yyyy,MM,dd,hh,mm,ss,dddd都只是取出单一的部分.

像下面的组合则不行:

time.ToString("gg y")     "公元 10"   //结果不是我们需要的"公元 2010年5月"

因为y代表的是"2010年5月",不是单一的功能.

在 ASP.net c# /中

  我们可以通过使用DataTime这个类来获取当前的时间。通过调用类中的各种方法我们可以获取不同的时间:如:日期(2008-09-04)、时间(12:12:12)、日期+时间(2008-09-04 12:11:10)等。

//获取日期+时间
DateTime.Now.ToString();            // 2008-9-4 20:02:10
DateTime.Now.ToLocalTime().ToString();        // 2008-9-4 20:12:12

//获取日期
DateTime.Now.ToLongDateString().ToString();    // 2008年9月4日
DateTime.Now.ToShortDateString().ToString();    // 2008-9-4
DateTime.Now.ToString("yyyy-MM-dd");        // 2008-09-04
DateTime.Now.Date.ToString();            // 2008-9-4 0:00:00

//获取时间
DateTime.Now.ToLongTimeString().ToString();   // 20:16:16
DateTime.Now.ToShortTimeString().ToString();   // 20:16
DateTime.Now.ToString("hh:mm:ss");        // 08:05:57
DateTime.Now.TimeOfDay.ToString();        // 20:33:50.7187500

//其他
DateTime.ToFileTime().ToString();       // 128650040212500000
DateTime.Now.ToFileTimeUtc().ToString();   // 128650040772968750
DateTime.Now.ToOADate().ToString();       // 39695.8461709606
DateTime.Now.ToUniversalTime().ToString();   // 2008-9-4 12:19:14

DateTime.Now.Year.ToString();          获取年份   // 2008
DateTime.Now.Month.ToString();      获取月份   // 9
DateTime.Now.DayOfWeek.ToString(); 获取星期   // Thursday
DateTime.Now.DayOfYear.ToString(); 获取第几天   // 248
DateTime.Now.Hour.ToString();          获取小时   // 20
DateTime.Now.Minute.ToString();     获取分钟   // 31
DateTime.Now.Second.ToString();     获取秒数   // 45

//n为一个数,可以数整数,也可以事小数
dt.AddYears(n).ToString();   //时间加n年
dt.AddDays(n).ToString();   //加n天
dt.AddHours(n).ToString();   //加n小时
dt.AddMonths(n).ToString();   //加n个月
dt.AddSeconds(n).ToString();   //加n秒
dt.AddMinutes(n).ToString();   //加n分

SQL语句使用时间和日期的函数

getdate():获取系统当前时间
dateadd(datepart,number,date):计算在一个时间的基础上增加一个时间后的新时间值,比如:dateadd(yy,30,getdate())
datediff(datepart,startdate,enddate):计算两个时间的差值,比如:datediff(yy,getdate(),'2008-08-08')
dataname(datepart,date):获取时间不同部分的值,返回值为字符串
datepart(datepart,date):和datename相似,只是返回值为整型
day(date):获取指定时间的天数
month(date):获取指定时间的月份
year(date):获取指定时间的年份

select year(getdate())  :当前年份

SQL在读取的时候转换时间格式的问题

时间是 DateTime 类型的  现在在一些地方我要只显示年/月/日 把后面的具体几点几分 把现实  这个转换怎么写

<%# Eval("NTime")%>     这种情况下怎么转换

绑在GridView里边的  <asp:BoundField DataField="NTime" HeaderText="时间"   ReadOnly="True" />   这种情况下怎么转换

这两个地方我都要转化成 只显示年/月/日  怎么写
<%#Convert.ToDateTime(Eval("NTime")).toString("YYYY/MM/dd")%>      --只要Ntime能转成时间格式即可。
<asp:BoundField DataField="NTime" HeaderText="时间" ReadOnly="True"
DataFormatString="{0:yyyy\/MM\/dd}" /> --这里的 “Ntime”列的类型必须为时间类型,否则转换不了 以上两种,转换过来的格式都为:年/月/日 .
<asp:BoundField DataField="NTime" HeaderText="时间"   ReadOnly="True" DataFormatString="{0:yyyy-MM-dd}" /> 
<%# Eval("NTime")%>:
<%# Eval(Container.DataItem, "NTime","{0:d}")%>

ASP.NET C# 日期 时间 年 月 日 时 分 秒 格式及转换(转自happymagic的专栏)的更多相关文章

  1. ASP.NET 日期 时间 年 月 日 时 分 秒 格式及转换

    在平时编码中,经常要把日期转换成各种各样的形式输出或保持,今天专门做了个测试,发现DateTime的ToString()方法居然有这么多的表现形式,和大家一起分享. DateTime time=Dat ...

  2. ASP.NET C# 获取当前日期 时间 年 月 日 时 分 秒

    我们可以通过使用DataTime这个类来获取当前的时间.通过调用类中的各种方法我们可以获取不同的时间:如:日期(2008-09-04).时间(12:12:12).日期+时间(2008-09-04 12 ...

  3. oracle截取时间的年/月/日/时/分/秒

    修改日期格式为年月日时分秒: alter session set nls_date_format='yyyy-mm-dd hh24:mi:ss';select to_char(sysdate,'yyy ...

  4. Js 日期字符串分别截取 年 月 日 时 分 秒

    function shijiantime(times){ var timearr = times.replace(" ", ":").replace(/\:/g ...

  5. C#WinForm中显示实时时间:年/月/日 时/分/秒 星期X

    //加载窗体时 string weekstr = ""; private void Form22_Load(object sender, EventArgs e) { this.t ...

  6. js将当前时间格式化为年-月-日 时:分:秒

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  7. [Windows]获取当前时间(年/月/日/时/分/秒)

    struct tm* GetCurTime(time_t inTime) { struct tm* curTime = localtime(&inTime); curTime->tm_y ...

  8. mysql 获取系统时间的下一天 年-月-日 时:分:秒

    DAY) as date

  9. Java 获取年 月 日 时 分 秒

    /** * 英文简写(默认)如:2010-12-01 */ public static String FORMAT_SHORT = "yyyy-MM-dd"; /** * 英文全称 ...

随机推荐

  1. HTML5/CSS3开发工具

    1.谷歌Google Web Designer https://www.google.com/webdesigner/ 这个工具不能在xp上运行,可以在win7 win8上运行 http://www. ...

  2. Combination Sum | & || & ||| & IV

    Combination Sum | Given a set of candidate numbers (C) and a target number (T), find all unique comb ...

  3. Android Volley获取json格式的数据

    为了让Android能够快速地访问网络和解析通用的数据格式Google专门推出了Volley库,用于Android系统的网络传输.volley库可以方便地获取远程服务器的图片.字符串.json对象和j ...

  4. iOS8 UILocalNotification 和 UIRemoteNotification 使用注意 草稿,正在整理中。。。。

    先说一个关于UILocalNotification的知识点,容易被忘记: Each app on a device is limited to 64 scheduled local notificat ...

  5. maven的一些依赖

    maven的一些依赖: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://w ...

  6. 电话激活windows server 2012的解决方案

    在激活Windows系统时,微软一直秉承着坑爹的传统,竟然把电话激活的界面给隐藏起来了,只留一个在线激活的界面,但是如果是给服务器激活系统,基本是不会有外网可以用的,不过我们可以通过命令行的方式进行激 ...

  7. 一台机器开2个Tomcat修改端口号

    修改一个Tomcat端口号步骤:1.找到Tomcat目录下的conf文件夹2.进入conf文件夹里面找到server.xml文件3.打开server.xml文件4.在server.xml文件里面找到下 ...

  8. myeclipse2013和以后版本破解

    当你下到最新版的myeclipse-blue的时候你是否会为注册激活而烦恼呢,别担心,其实激活也就那么点事儿,请遵循我如下做法就可以了: 1.运行jdk下面的cracker.jar文件来打开生成活跃码 ...

  9. 连续自然数和(codevs 1312)

    题目描述 Description 对于一个自然数M,求出所有的连续的自然数段,使得这些连续自然数段的全部数字和为M.eg:1998+1999+2000+2001+2002=10000,所以从1998到 ...

  10. select()函数以及FD_ZERO、FD_SET、FD_CLR、FD_ISSET(转)

    select函数用于在非阻塞中,当一个套接字或一组套接字有信号时通知你,系统提供select函数来实现多路复用输入/输出模型, 原型: int select(int maxfd,fd_set *rds ...