【C#】使用 System.Globalization.DateTimeFormatInfo 屏蔽系統時間格式對代碼的影響


時間格式我使用的一直都是 yyyy-MM-dd HH:mm:ss,然后某天,我改成了 yyyy/MM/dd HH:mm:ss,然后神奇的問題就來了。

怎么會出現這種情況的呢?

因為我手賤改了系統的日期格式。打開 控制面板 → 日期和時間 → 更改日期和時間 → 更改日歷設置

我把日期格式設置成了 yyyy-MM-dd,然后就這樣了。也就是說,系統的時間格式優先級比 ToString 方法要高。

我們一般不會去修改系統的時間格式,這時 ToString 方法還是有效的,一旦修改了,ToString 方法就無效了。

解決方案就是使用 System.Globalization.DateTimeFormatInfo

Console.WriteLine(DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss",
                System.Globalization.DateTimeFormatInfo.InvariantInfo));

這樣就可以不受系統的時間格式影響了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM