Windows 运行时 - 使用 C# 在 WinRT 应用中获取当前时间格式

本文关键字:获取 格式 时间 应用 WinRT 运行时 使用 Windows | 更新日期: 2023-09-27 17:56:41

我需要使用 c# 在 WinRT 应用中获取当前时间格式。我使用地理区域来获取区域,它只会告诉我们位置而不是格式。但通常我们只是更改格式以更改系统的日期时间格式。

因此,请帮助我找到我们如何确切地知道格式,因为它总是向我返回"en-US"(默认语言)。

Windows 运行时 - 使用 C# 在 WinRT 应用中获取当前时间格式

这显示了如何获取当前 UI 区域性的长时间模式(格式)、指定的(波兰语)区域性,使用指定区域性的默认格式和指定的模式获取当前时间:

Debug.WriteLine(CultureInfo.CurrentUICulture.DateTimeFormat.LongTimePattern);
Debug.WriteLine(new CultureInfo("pl-pl").DateTimeFormat.LongTimePattern);
Debug.WriteLine(DateTime.Now.ToString(new CultureInfo("pl-pl")));
Debug.WriteLine(DateTime.Now.ToString(new CultureInfo("pl-pl").DateTimeFormat.ShortTimePattern));

这些是输出:

H:mm:ss
HH:mm:ss
2013-01-30 08:21:09
08:21

Windows.Globalization.ApplicationLanguages.Languages中的顶级语言告诉您应用程序正在运行的语言。

不过,您不必得到它,当您构建Windows.Globalization.DateTimeFormatter并且不提供语言时,这些语言是默认的。

如果想知道格式是什么,而不实际呈现特定时间,请使用 Patterns 属性。