在c#中datetime是一個包含日期、時間的類型,此類型通過tostring()轉換為字符串時,可根據傳入給tostring()的參數轉換為多種字符串格式。
1. 分類
datetime調用tostring()傳入的參數可分為制式和自定義兩種:
1) 制式:系統自帶的,轉入特定的單個字符就可轉換為系統已設定好的格式。
2) 自定義:自由組合日期代碼(y、m、d、h、m、s、f)來展示豐富的日期格式。
2. 制式類型
說明:轉入特定的單個字符就可轉換為系統已設定好的格式。
2.1 格式來源
在windows系統中的區域和語言(位置:控制面板 → 區域和語言)選項中可設置日期和時間的格式。
可設置的分類有:短日期、長日期、短時間、長時間等。
調用tostring()進行轉換時,許多轉換方式都是通過上面的4個分類進行組合。
2.2 符號對照表
2.2.1 環境
.net版本:4.0
系統版本:win7
格式信息:
2.2.2 對照表
符號 | 語法 | 示例(2016-05-09 13:09:55:2350) | 格式說明 |
y | datetime.now.tostring() | 2016/5/9 13:09:55 | 短日期 長時間 |
d | datetime.now.tostring("d") | 2016/5/9 | 短日期 |
d | datetime.now.tostring("d") | 2016年5月9日 | 長日期 |
f | datetime.now.tostring("f") | 2016年5月9日 13:09 | 長日期 短時間 |
f | datetime.now.tostring("f") | 2016年5月9日 13:09:55 | 長日期 長時間 |
g | datetime.now.tostring("g") | 2016/5/9 13:09 | 短日期 短時間 |
g | datetime.now.tostring("g") | 2016/5/9 13:09:55 | 短日期 長時間 |
t | datetime.now.tostring("t") | 13:09 | 短時間 |
t | datetime.now.tostring("t") | 13:09:55 | 長時間 |
u | datetime.now.tostring("u") | 2016-05-09 13:09:55z | |
u | datetime.now.tostring("u") | 2016年5月9日 5:09:55 | 本初子午線的長日期和長時間 |
m | datetime.now.tostring("m") | 5月9日 | |
m | datetime.now.tostring("m") | 5月9日 | |
r | datetime.now.tostring("r") | mon, 09 may 2016 13:09:55 gmt | |
r | datetime.now.tostring("r") | mon, 09 may 2016 13:09:55 gmt | |
y | datetime.now.tostring("y") | 2016年5月 | |
y | datetime.now.tostring("y") | 2016年5月 | |
o | datetime.now.tostring("o") | 2016-05-09t13:09:55.2350000 | |
o | datetime.now.tostring("o") | 2016-05-09t13:09:55.2350000 | |
s | datetime.now.tostring("s") | 2016-05-09t13:09:55 |
2.3 示例圖
2.4 win2003版本
在win2003默認中的無字符、d、g、g格式中會用'-'符號替代'/'符號(短日期格式為:yyyy-m-d)。
3. 自定義格式類型
開發人員可通過英文字符(y、m、d、h、m、s、f) 分別代替(年、月、日、時、分、秒、毫秒)來自由組合日期時間格式。
3.1 符號對照表
.net版本:4.0
系統版本:win7
符號 | 說明 | 語法 | 示例(2016-05-09 13:09:55:2350) |
yy | 年份后兩位 | datetime.now.tostring("yy") | datetime.now.tostring("yy"); // => 16 |
yyyy | 4位年份 | datetime.now.tostring("yyyy") | datetime.now.tostring("yyyy"); // => 2016 |
mm | 兩位月份;單數月份前面用0填充 | datetime.now.tostring("mm") | datetime.now.tostring("mm"); // => 05 |
dd | 日數 | datetime.now.tostring("dd") | datetime.now.tostring("dd"); // => 09 |
ddd | 周幾 | datetime.now.tostring("ddd") | datetime.now.tostring("ddd"); // => 周一 |
dddd | 星期幾 | datetime.now.tostring("dddd") | datetime.now.tostring("dddd"); // => 星期一 |
hh | 12小時制的小時數 | datetime.now.tostring("hh") | datetime.now.tostring("hh"); // => 01 |
hh | 24小時制的小時數 | datetime.now.tostring("hh") | datetime.now.tostring("hh"); // => 13 |
mm | 分鐘數 | datetime.now.tostring("mm") | datetime.now.tostring("mm"); // => 09 |
ss | 秒數 | datetime.now.tostring("ss") | datetime.now.tostring("ss"); // => 55 |
ff | 毫秒數前2位 | datetime.now.tostring("ff") | datetime.now.tostring("ff"); // => 23 |
fff | 毫秒數前3位 | datetime.now.tostring("fff") | datetime.now.tostring("fff"); // => 235 |
ffff | 毫秒數前4位 | datetime.now.tostring("ffff") | datetime.now.tostring("ffff"); // => 2350 |
分隔符 |
可使用分隔符來分隔年月日時分秒。 包含的值可為:-、/、:等非關鍵字符 |
datetime.now.tostring("yyyy-mm-dd hh:mm:ss:ffff"); // => 2016-05-09 13:09:55:2350 datetime.now.tostring("yyyy/mm/dd hh:mm:ss:ffff"); // => 2016/05/09 13:09:55:2350 datetime.now.tostring("yyyy/mm/dd hh:mm:ss:ffff dddd"); // => 2016/05/09 13:09:55:2350 星期一 |
3.2 示例圖
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。
原文鏈接:http://www.cnblogs.com/polk6/p/5465088.html#Menu2-Standard