修改应用程序范围,显示DateTime
对于我们开发的应用程序,我们在应用程序的任何地方都使用"G"
格式。
我们想要改变这种格式:
我们需要在第二个数字后显示第一个数字。
例如:
29.07.2014 08:54:36.1
我们希望能够在CurrentCulture
进行更改。
这是我们在当前文化中唯一想要改变的东西,所以如果以前,我们有以下格式:
2014/07/29 08:54:36 AM
然后我们想拥有
2014/07/29 08:54:36.1 AM
如果在我之前
29.07.2014 08:54:36
然后我们想拥有
29.07.2014 08:54:36.1
很高兴,如果我们收到的DateTime
,没有要显示的数字(= 0十分之一秒),则不显示。
您可以为当前线程设置CurrentCulture
并指定偏离的LongTimePattern
:
CultureInfo culture = Thread.CurrentThread.CurrentCulture.Clone(); change the culture.DateTimeFormat.LongTimePattern = "your pattern"; Thread.CurrentThread.CurrentCulture = culture;
我对此进行了测试,看起来就像是回归了你想要的东西,除了“很高兴”。
string now = DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss.f tt", CultureInfo.GetCultureInfo("en-US"));
我会为DateTime创建一个扩展方法,比如ToPrettyPrintStringg()或者你想要的任何东西,以你希望的格式返回日期,这样你就可以按照你想要的方式显示任何日期。