C#日期格式化應用是什么樣子呢?首先來看一個細節(jié),但是如果你不知道這個細節(jié),可能會讓你忙活半天。比如今天的我。細節(jié)的發(fā)現(xiàn)源自與今天在修改算法與設(shè)計分析教學網(wǎng)站的時候,我明明定義作業(yè)提交截止時間是2009-08-20 00:00:00,可是到前臺它顯示的是2009-08-20 12:00:00.此時的我就暈了。一開始我懷疑是服務器系統(tǒng)時間又出現(xiàn)錯誤了。于是遠程服務器發(fā)現(xiàn)系統(tǒng)時間沒有錯,就奇怪了。查看一下數(shù)據(jù)庫表存儲的時間,也是2009-08-20 00:00:00,那怎么顯示卻錯了呢?于是查看頁面輸出時間的代碼

- endTime.ToString("MM-dd hh:mm:ss");
發(fā)現(xiàn)也沒有錯啊.就很囧了~~頓時束手無策~
C#日期格式化問題的解決:
想了一下,就想去管理后臺重新設(shè)置時間,奇怪的是管理后臺顯示的時間卻又是正確的。于是查看后臺代碼,如下:
- Convert.ToDateTime(
-
- row["CoWk_UpoladEndTime"]).
-
- ToString("yyyy-MM-dd(ddd) HH:mm:ss");
發(fā)現(xiàn)了不同的地方HH與hh~~將前臺的代碼頁改為HH,就OK了。一個細節(jié)的知識問題~
C#日期格式化需要掌握的細節(jié):
|
格式 |
輸出 |
示例 | | 年 | | y | 7 | string yy = DateTime.Now.ToString(”y-MM”) yy=”7-05″ | | yy | 07 | string yy = DateTime.Now.ToString(”yy-MM”) yy=”07-05″ | | yyy或更多的y | 1984 | string yy = DateTime.Now.ToString(”yyyy”); yy=”2007″ | | 月 | | M | 5. | string mon = DateTime.Parse(”1984-05-09″)ToString(”yyyy-M”) mon = “1984-5″ | | MM | 05. | string mon = DateTime.Parse(”1984-05-09″)ToString(”MM”) mon = “05″ | | MMM | 如果是中文版的操作系統(tǒng),則會輸出:五月. 如果是英文操作系統(tǒng),則輸入月份前三個字母的簡寫:May | string mon = DateTime.Parse(”2006-07-01″).ToString(”MMM”) 英文版操作系統(tǒng):Jul 中文版操作系統(tǒng):七月 | | MMMM或更多的M | 如果是中文版的操作系統(tǒng),則會輸出:五月. 如果是英文操作系統(tǒng),則輸入月份的全寫 | string mon = DateTime.Parse(”2006-07-01″).ToString(”MMM”) 英文版操作系統(tǒng):July 中文版操作系統(tǒng):七月 | | 日期或星期 | | d | 9 | string dd= DateTime.Parse(”1984-05-09″)ToString(”d”) dd= “9″ | | dd | 09 | string dd= DateTime.Parse(”1984-05-09″)ToString(”dd”) dd= “09″ | | ddd | 如果是中文版的操作系統(tǒng),則會輸出星期,如星期三。. 如果是英文操作系統(tǒng),則輸出星期的簡寫:如 Wed | string dd = DateTime.Parse(”2006-07-01″).ToString(”ddd”) 英文版操作系統(tǒng):Wed 中文版操作系統(tǒng):星期三 | | dddd或更多的d | 如果是中文版的操作系統(tǒng),則會輸出星期,如星期三。. 如果是英文操作系統(tǒng),則輸出星期:如 Wednesday | string dd = DateTime.Parse(”2006-07-01″).ToString(”dddd”) 英文版操作系統(tǒng):Wednesday 中文版操作系統(tǒng):星期三 | | 小時 | | h | 小時范圍:1-12 | string hh = DateTime.Now.ToString(“h”); hh = 8 | | hh或更多的h | 小時范圍:1-12 | string hh = DateTime.Now.ToString(“hh”); hh = 08 | | H | 小時范圍:0-23 | string hh = DateTime.Now.ToString(“yyyy-H”); hh = 2006-8 | | HH或更多的H | 小時范圍:0-23 | string 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 | | 分鐘 | | m | 6 | string mm = DateTime.Now.ToString(”yyyy-MM-dd-m”); mm = “2006-07-01-6”; | | mm或更多的m | 06 | string mm = DateTime.Now.ToString(”yyyy-MM-dd-mm”); mm = “2006-07-01-06”; | | 秒 | | s | 6 | string mm = DateTime.Now.ToString(”yyyy-MM-dd-s”); mm = “2006-07-01-6”; | | ss或更多的s | 06 | string mm = DateTime.Now.ToString(”yyyy-MM-dd-ss”); mm = “2006-07-01-06”; | |
關(guān)于上述C#日期格式化的描述為:
DateTime.ToString()函數(shù)有四個重載。一般用得多的就是不帶參數(shù)的那個了。殊不知,DateTime.ToString(string format)功能更強大,能輸出不同格式的日期。以下把一些情況羅列出來,供大家參考。有些在MSDN上有的就沒有列出來了。
1.y代表年份,注意是小寫的y,大寫的Y并不代表年份。
2.M表示月份。
3.d表示日期,注意D并不代表什么。
4.h或H表示小時,h用的是12小時制,H用的是24小時制。
5.m表示分鐘。
6.s表示秒。注意S并不代表什么
C#日期格式化應用以及C#日期格式化需要掌握的細節(jié)內(nèi)容就向你介紹到這里,希望對你了解和學習C#日期格式化有所幫助。
分享文章:C#日期格式化應用解析
新聞來源:
http://www.dlmjj.cn/article/dhjesid.html