時間格式化

2021-07-24 23:02:50 字數 998 閱讀 6945

在開發的時候,碰到下面這樣乙個問題:

在程式中顯示當前系統時間,但是有乙個要求,那就是,不論系統時間格式設定成什麼,介面顯示的時間都必須是「yyyy/mm/dd hh:mm:ss"格式的。

剛開始,我在**中是這樣寫的:

this.label2.text = system.datetime.now.tostring("yyyy/mm/dd hh:mm:ss");
系統設定的日期格式為:yyyy/m/d或yyyy/mm/dd

此時執行程式,一切正常,顯示效果為:

但是,當我將系統日期格式設定為:yyyy-mm-dd(或其他不帶「/」的系統日期格式)

再執行程式,顯示的時間格式卻發生了變化,和系統設定的時間格式一致了。

效果圖如下:

通過反覆試驗發現,程式最終顯示的日期格式總是和系統設定的日期格式保持一致,也就是說**中的datetme.tostring("yyyy/mm/dd hh:mm:ss");部分不起作用了。

看來,要想datetme.tostring("yyyy/mm/dd hh:mm:ss")的設定起作用,必須排除系統日期設定的格式的影響,經過一番查詢,發現:可以使用system.globalization.datetimeformatinfo.invariantinfo來排除當前culture的影響。

this.label2.text = system.datetime.now.tostring("yyyy/mm/dd hh:mm:ss",system.globalization.datetimeformatinfo.invariantinfo);
這樣的話,不管系統日期格式被設定成什麼,顯示的日期格式均為:yyyy/mm/dd

時間格式化

時間格式化工具類 public class dateutil implements serializable else if type 2 else if type 3 else if type 4 else if type 5 else if type 6 else if type 7 else ...

時間格式化

顯示規則 若為當天,則顯示時分 若為其他日期,但是還在今年之內,顯示月 日 時分 若為今年之前,則顯示年 月 日 時分 1 let questionsdata await this.model questions field from unixtime asktime,y m d h i creat...

mysql時間格式化

date forma t date,format 根據格式串format 格式化日期或日期和時間值date,返回結果串。可用date format 來格式化date 或datetime 值,以便得到所希望的格式。根據format字串格式化date值 s,s 兩位數字形式的秒 00,01,59 i 兩...