asp时间⽇期(DateTime)的格式处理⽇期格式化{0:yyyy-MM-dd HH:mm:ss.fff}与{0:yyyy-MM-dd hh:mm:ss.fff}的区别
使⽤24⼩时制格式化⽇期:{0:yyyy-MM-dd HH:mm:ss.fff}
使⽤12⼩时制格式化⽇期:{0:yyyy-MM-dd hh:mm:ss.fff}
以下同理,从左⾄右分别为-年-⽉-⽇时:分:秒.毫秒
{0:yyyy-MM-dd HH:mm:ss zzz}
{0:yyyy-MM-dd HH:mm:ss.ff zzz}
{0:yyyy-MM-dd HH:mm:ss.fff zzz}
{0:yyyy-MM-dd HH:mm:ss.ffff zzz}
⽇期与字符串之间的转换:
1、字符串与⽇期之间的转换:
DateTime dt = DateTime.ParseExact("时间字符串", "原始字符串的格式(yyyyMMddHHmmss)",
System.Globalization.CultureInfo.InvariantCulture);
使⽤列⼦: DateTime dt = DateTime.ParseExact("20100204005802", "yyyyMMddHHmmss",
System.Globalization.CultureInfo.InvariantCulture);  //得到时间结果是2010/2/4 0:58:02
下⾯是⼀些例⼦:
1//2016年4⽉24⽇
2            System.DateTime.Now.ToString("D");
3//2016-4-24
4            System.DateTime.Now.ToString("d");
5//2016年4⽉24⽇ 16:30:15
6            System.DateTime.Now.ToString("F");
7//2016年4⽉24⽇ 16:30
8            System.DateTime.Now.ToString("f");
9//2016-4-24 16:30:15
10            System.DateTime.Now.ToString("G");
11//2016-4-24 16:30
12            System.DateTime.Now.ToString("g");
13//16:30:15
14            System.DateTime.Now.ToString("T");
15//16:30
16            System.DateTime.Now.ToString("t");
17//2016年4⽉24⽇ 8:30:15
18            System.DateTime.Now.ToString("U");
19//2016-04-24 16:30:15Z
20            System.DateTime.Now.ToString("u");
21//4⽉24⽇
22            System.DateTime.Now.ToString("m");
23            System.DateTime.Now.ToString("M");
24//Tue, 24 Apr 2016 16:30:15 GMT
25            System.DateTime.Now.ToString("r");
26            System.DateTime.Now.ToString("R");
27//2016年4⽉
28            System.DateTime.Now.ToString("y");
29            System.DateTime.Now.ToString("Y");
30//2016-04-24T15:52:19.1562500+08:00
31            System.DateTime.Now.ToString("o");
32            System.DateTime.Now.ToString("O");
33//2016-04-24T16:30:15
34            System.DateTime.Now.ToString("s");
35//2016-04-24 15:52:19
36            System.DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:ffff");
37//2016年04⽉24 15时56分48秒
38            System.DateTime.Now.ToString("yyyy年MM⽉dd HH时mm分ss秒");
39//星期⼆, 四⽉ 24 2016
40            System.DateTime.Now.ToString("dddd, MMMM dd yyyy");
41//⼆, 四⽉ 24 ’08
42            System.DateTime.Now.ToString("ddd, MMM d \"’\"yy");
43//星期⼆, 四⽉ 24
44            System.DateTime.Now.ToString("dddd, MMMM dd");
45//4-08
46            System.DateTime.Now.ToString("M/yy");
47//24-04-08
48            System.DateTime.Now.ToString("dd-MM-yy");
49//字符型转换转为字符串
5012345.ToString("n");  //⽣成 12,345.00
5112345.ToString("C"); //⽣成¥12,345.00
5212345.ToString("e"); //⽣成 1.234500e+004
5312345.ToString("f4"); //⽣成 12345.0000
5412345.ToString("x"); //⽣成 3039 (16进制)
5512345.ToString("p"); //⽣成 1,234,500
56//本年度销售额、本季度利润、本⽉新增客户
57//今天
58            DateTime.Now.Date.ToShortDateString();
59//昨天,就是今天的⽇期减⼀
60            DateTime.Now.AddDays(-1).ToShortDateString();
61//明天,同理,加⼀
62            DateTime.Now.AddDays(1).ToShortDateString();
63//本周(要知道本周的第⼀天就得先知道今天是星期⼏,从⽽得知本周的第⼀天就是⼏天前的那⼀天,要注意的是这⾥的每⼀周是从周⽇始⾄周六⽌
64            DateTime.Now.AddDays(Convert.ToDouble((0 - Convert.ToInt16(DateTime.Now.DayOfWeek)))).ToShortDateString();
65            DateTime.Now.AddDays(Convert.ToDouble((6 - Convert.ToInt16(DateTime.Now.DayOfWeek)))).ToShortDateString();
66//由于DayOfWeek返回的是数字的星期⼏,我们要把它转换成汉字⽅便我们阅读,有些⼈可能会⽤switch来⼀个⼀个地对照,其实不⽤那么⿇烦的
67string[] Day = new string[] { "星期⽇", "星期⼀", "星期⼆", "星期三", "星期四", "星期五", "星期六" };
68string day= Day[Convert.ToInt16(DateTime.Now.DayOfWeek)];
69//上周,同理,⼀个周是7天,上周就是本周再减去7天,下周也是⼀样
70            DateTime.Now.AddDays(Convert.ToDouble((0 - Convert.ToInt16(DateTime.Now.DayOfWeek))) - 7).ToShortDateString();
71            DateTime.Now.AddDays(Convert.ToDouble((6 - Convert.ToInt16(DateTime.Now.DayOfWeek))) - 7).ToShortDateString();
72//下周
73            DateTime.Now.AddDays(Convert.ToDouble((0 - Convert.ToInt16(DateTime.Now.DayOfWeek))) + 7).ToShortDateString();
74            DateTime.Now.AddDays(Convert.ToDouble((6 - Convert.ToInt16(DateTime.Now.DayOfWeek))) + 7).ToShortDateString();
75//本⽉,很多⼈都会说本⽉的第⼀天嘛肯定是1号,最后⼀天就是下个⽉⼀号再减⼀天。当然这是对的
76//⼀般的写法
77string oneDay = DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + "1"; //第⼀天
78            DateTime.Parse(DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + "1").AddMonths(1).AddDays(-1).ToShortDateString();//最后⼀天 79//巧⽤C#⾥ToString的字符格式化更简便
80            DateTime.Now.ToString("yyyy-MM-01");
81            DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(1).AddDays(-1).ToShortDateString();
82//上个⽉,减去⼀个⽉份
83            DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(-1).ToShortDateString();
84            DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString();
85//下个⽉,加去⼀个⽉份
86            DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(1).ToShortDateString();
87            DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(2).AddDays(-1).ToShortDateString();
88//7天后
89            DateTime.Now.Date.ToShortDateString();
90            DateTime.Now.AddDays(7).ToShortDateString();
91//7天前
92            DateTime.Now.AddDays(-7).ToShortDateString();
93            DateTime.Now.Date.ToShortDateString();
94//本年度,⽤ToString的字符格式化我们也很容易地算出本年度的第⼀天和最后⼀天
95            DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).ToShortDateString();
96            DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(1).AddDays(-1).ToShortDateString();
97//上年度
98            DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(-1).ToShortDateString();
99            DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddDays(-1).ToShortDateString();
100//下年度
101            DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(1).ToShortDateString();
102            DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(2).AddDays(-1).ToShortDateString();
103//本季度,很多⼈都会觉得这⾥难点,需要写个长长的过程来判断。其实不⽤的,我们都知道⼀年四个季度,⼀个季度三个⽉
104//⾸先我们先把⽇期推到本季度第⼀个⽉,然后这个⽉的第⼀天就是本季度的第⼀天了
105            DateTime.Now.AddMonths(0 - ((DateTime.Now.Month - 1) % 22)).ToString("yyyy-MM-01");
106//同理,本季度的最后⼀天就是下季度的第⼀天减⼀
107            DateTime.Parse(DateTime.Now.AddMonths(22 - ((DateTime.Now.Month - 1) % 22)).ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString(); 108//下季度,
109            DateTime.Now.AddMonths(22 - ((DateTime.Now.Month - 1) % 22)).ToString("yyyy-MM-01");
110            DateTime.Parse(DateTime.Now.AddMonths(6 - ((DateTime.Now.Month - 1) % 22)).ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString();
111//上季度
112            DateTime.Now.AddMonths(-22 - ((DateTime.Now.Month - 1) % 22)).ToString("yyyy-MM-01");
113            DateTime.Parse(DateTime.Now.AddMonths(0 - ((DateTime.Now.Month - 1) % 22)).ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString();    View Code
1 DateTime dt = DateTime.Now;
2string result = null;
3            result = dt.ToString(); //2016-11-5 13:21:25
4            result = dt.ToFileTime().ToString(); //127756416859912816
5            result = dt.ToFileTimeUtc().ToString(); //127756704859912816
6            result = dt.ToLocalTime().ToString(); //2016-11-5 21:21:25
7            result = dt.ToLongDateString().ToString(); //2016年11⽉5⽇
8            result = dt.ToLongTimeString().ToString(); //13:21:25
9            result = dt.ToOADate().ToString(); //38661.5565508218
10            result = dt.ToShortDateString().ToString(); //2016-11-5
11            result = dt.ToShortTimeString().ToString(); //13:21
12            result = dt.ToUniversalTime().ToString(); //2016-11-5 5:21:25
13            result = dt.Year.ToString(); //2016
14            result = dt.Date.ToString(); //2016-11-5 0:00:00
15            result = dt.DayOfWeek.ToString(); //Saturday
16            result = dt.DayOfYear.ToString(); //309
17            result = dt.Hour.ToString(); //13
18            result = dt.Millisecond.ToString(); //441
19            result = dt.Minute.ToString(); //30
20            result = dt.Month.ToString(); //11
21            result = dt.Millisecond.ToString(); //28
22            result = dt.Ticks.ToString(); //632667942284412864
23            result = dt.TimeOfDay.ToString(); //13:30:28.4412864
24            result = dt.ToString(); //2016-11-5 13:47:04
25            result = dt.AddYears(1).ToString(); //2006-11-5 13:47:04
26            result = dt.AddDays(1.1).ToString(); //2016-11-6 16:11:04
27            result = dt.AddHours(1.1).ToString(); //2016-11-5 14:53:04
28            result = dt.AddMilliseconds(1.1).ToString(); //2016-11-5 13:47:04
29            result = dt.AddMonths(1).ToString(); //2016-12-5 13:47:04
30            result = dt.AddSeconds(1.1).ToString(); //2016-11-5 13:47:05
31            result = dt.AddMinutes(1.1).ToString(); //2016-11-5 13:48:10
32            result = dt.AddTicks(1000).ToString(); //2016-11-5 13:47:04
33            result = dt.CompareTo(dt).ToString(); //0
34
35            result = dt.Equals("2016-11-6 16:11:04").ToString(); //False
36            result = dt.Equals(dt).ToString(); //True
37            result = dt.GetHashCode().ToString(); //1474088234
38            result = dt.GetType().ToString(); //System.DateTime
39            result = dt.GetTypeCode().ToString(); //DateTime
40            result = dt.GetDateTimeFormats('s')[0].ToString(); //2016-11-05T14:06:25
41            result = dt.GetDateTimeFormats('t')[0].ToString(); //14:06
42            result = dt.GetDateTimeFormats('y')[0].ToString(); //2016年11⽉
43            result = dt.GetDateTimeFormats('D')[0].ToString(); //2016年11⽉5⽇
44            result = dt.GetDateTimeFormats('D')[1].ToString(); //2016 11 05
45            result = dt.GetDateTimeFormats('D')[2].ToString(); //星期六 2016 11 05
46            result = dt.GetDateTimeFormats('D')[3].ToString(); //星期六 2016年11⽉5⽇
47            result = dt.GetDateTimeFormats('M')[0].ToString(); //11⽉5⽇
48            result = dt.GetDateTimeFormats('f')[0].ToString(); //2016年11⽉5⽇ 14:06
49            result = dt.GetDateTimeFormats('g')[0].ToString(); //2016-11-5 14:06
50            result = dt.GetDateTimeFormats('r')[0].ToString(); //Sat, 05 Nov 2016 14:06:25 GMT
51            result = string.Format("{0:d}", dt); //2016-11-5
52            result = string.Format("{0:D}", dt); //2016年11⽉5⽇
53            result = string.Format("{0:f}", dt); //2016年11⽉5⽇ 14:23
54            result = string.Format("{0:F}", dt); //2016年11⽉5⽇ 14:23:23
55            result = string.Format("{0:g}", dt); //2016-11-5 14:23
56            result = string.Format("{0:G}", dt); //2016-11-5 14:23:23
57            result = string.Format("{0:M}", dt); //11⽉5⽇
58            result = string.Format("{0:R}", dt); //Sat, 05 Nov 2016 14:23:23 GMT
59            result = string.Format("{0:s}", dt); //2016-11-05T14:23:23
60            result = string.Format("{0:t}", dt); //14:23
61            result = string.Format("{0:T}", dt); //14:23:23
62            result = string.Format("{0:u}", dt); //2016-11-05 14:23:23Z
63            result = string.Format("{0:U}", dt); //2016年11⽉5⽇ 6:23:23
64            result = string.Format("{0:Y}", dt); //2016年11⽉
65            result = string.Format("{0}", dt); //2016-11-5 14:23:23?
66            result = string.Format("{0:yyyyMMddHHmmssffff}", dt);
View Code
1.        y代表年份,注意是⼩写的y,⼤写的Y并不代表年份。
2.        M表⽰⽉份。
3.        d表⽰⽇期,注意D并不代表什么。
4.        h或H表⽰⼩时,h⽤的是12⼩时制,H⽤的是24⼩时制。
5.        m表⽰分钟。
6.        s表⽰秒。注意S并不代表什么。
格式输出⽰例
y7string yy = DateTime.Now.ToString("y-MM")
yy="7-05"
yy07string yy = DateTime.Now.ToString("yy-MM")
yy="07-05"
yyy或更多的y1984string yy = DateTime.Now.ToString("yyyy");
yy="2007"
M  5.string mon = DateTime.Parse("1984-05-09")ToString("yyyy-M")
mon = "1984-5"
MM05.string mon = DateTime.Parse("1984-05-09")ToString("MM")
mon = "05"
MMM如果是中⽂版
的操作系统,
则会输出:五
⽉.
如果是英⽂操
作系统,则输
⼊⽉份前三个
字母的简写:
May string mon = DateTime.Parse("2006-07-01").ToString("MMM")英⽂版操作系统:Jul
中⽂版操作系统:七⽉
MMMM或更多的M如果是中⽂版
的操作系统,
则会输出:五
⽉.
如果是英⽂操
作系统,则输
⼊⽉份的全写string mon = DateTime.Parse("2006-07-01").ToString("MMM")英⽂版操作系统:July
中⽂版操作系统:七⽉
⽇期或星期
d9string dd= DateTime.Parse("1984-05-09")ToString("d")
dd= "9"
dd09string dd= DateTime.Parse("1984-05-09")ToString("dd")
dd= "09"
ddd如果是中⽂版
的操作系统,
则会输出星
期,如星期
三。.
如果是英⽂操
作系统,则输
出星期的简
写:如
Wed string dd = DateTime.Parse("2006-07-01").ToString("ddd")英⽂版操作系统:Wed
中⽂版操作系统:星期三
dddd或更多的d如果是中⽂版
的操作系统,
则会输出星
期,如星期
三。.
如果是英⽂操
作系统,则输
出星期:如
Wednesday string dd = DateTime.Parse("2006-07-01").ToString("dddd")英⽂版操作系统:Wednesday
中⽂版操作系统:星期三
⼩时
h⼩时范围:1-
12string hh = DateTime.Now.ToString(“h”); hh = 8
hh或更多的h⼩时范围:1-
12string hh = DateTime.Now.ToString(“hh”); hh = 08
H⼩时范围:0-
23string hh = DateTime.Now.ToString(“yyyy-H”); hh = 2006-8
HH或更多的H⼩时范围:0-
23string hh = DateTime.Now.ToString(“yyyy-HH”);
hh = 2006-08
string hh = DateTime.Pare(“2006-7-4 18:00:00”).ToString(“yyyy-HH”);
hh = 2006-18
分钟
m6string mm =  DateTime.Now.ToString("yyyy-MM-dd-m");
mm = “2006-07-01-6”;
mm = “2006-07-01-06”;
s6string mm =  DateTime.Now.ToString("yyyy-MM-dd-s");
mm = “2006-07-01-6”;
ss或更多的s06string mm =  DateTime.Now.ToString("yyyy-MM-dd-ss");
日期字符串是什么mm = “2006-07-01-06”;

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。