Make DateTime.Now 在 Linux 上全局显示欧洲格式



我正在运行一个包含DateTime.Now.ToString((的.NET Core应用程序。在我的电脑上,它显示欧洲日期格式 (dd/mm/yy(,但在位于美国的 Linux VM 上运行时,它显示美国日期格式 (mm/dd/yy(,尽管 VM 上的时区是 GMT。

如何使其仅显示欧洲日期格式?

我知道我可以在程序内手动格式化它,但是有没有办法在 Linux 系统上全局执行此操作?

若要为所有应用程序线程设置区域性,可以使用CultureInfo.DefaultThreadCurrentCulture属性,如下所示

if (Thread.CurrentThread.CurrentCulture.Name == "en-US")
{
culture = CultureInfo.CreateSpecificCulture("...");
CultureInfo.DefaultThreadCurrentCulture = culture;
CultureInfo.DefaultThreadCurrentUICulture = culture;
}

您正在检查当前区域性是否已en-US,并将默认区域性更新为任何欧盟特定区域性,例如de-DEfr-FR。您还可以参考 MSDN 了解详细信息

您可以使用以下代码:

DateTime.Now.ToString("dd/MM/yy")

它应该有效。

更多信息: https://www.c-sharpcorner.com/blogs/date-and-time-format-in-c-sharp-programming1

最新更新