如何获取“控制面板”的“区域和语言”设置中指定的日期/时间格式

时间:2012-08-28 18:37:29

标签: .net datetime formatting

我正在尝试完全按照用户在Windows控制面板的“区域和语言”页面上指定的日期和时间进行格式化。只要我使用常规格式字符串,例如“g”表示一般的短日期/时间,这对于用户进行的大多数选择都是半自动的。

但我遇到过至少一个例外。如果我选择格式:“英语(美国)”和短时间:“hh:mm tt”,则格式化忽略“hh”部分而是使用“h:mm tt”,即单个没有前导零 - 数字小时。

 // Just testing - to be removed
 string s1 = CultureInfo.CurrentCulture.DateTimeFormat.ShortTimePattern;
 string s2 = CultureInfo.CurrentUICulture.DateTimeFormat.ShortTimePattern;

将上述代码添加到我的程序中确认.Net正在使用“h:mm tt”而不是“控制面板”页面上指定的“hh:mm tt”。

我可以做些什么来让它使用指定的设置,或者自己确定设置然后明确地让格式化使用“hh:mm tt”?

0 个答案:

没有答案