我正在使用两台服务器(Server 2012 Std)和(Server 2016)。
2012年,当我运行命令时:
[System.DateTime]::UtcNow.ToString([System.Globalization.CultureInfo]::GetCultureInfo("en-NZ"))
我得到了结果:
13/03/2018 12:49:55 a.m。
当我在Server 2016上运行与上面相同的命令时,我回来了:
13/03/2018 12:48:42 AM
它们的关键部分是AM / PM格式。我试图理解为什么这些返回不同的结果以及如何使服务器2016输出格式化与第一个相同。这是由于应用程序要求,我无权更改应用程序以格式化字符串,因此我必须以某种方式在操作系统级别解决此问题。
答案 0 :(得分:4)
请参阅Output of times (AM/PM) changed in Windows 10 when using DateTime.ToString("tt")进行一些讨论。
您似乎无法在不更改应用程序代码的情况下解决此问题。
答案 1 :(得分:0)
我发现了同样的问题,我通过使用以下代码解决了这个问题。不确定这是不是你想要的。
[System.DateTime]::UtcNow.ToString("dd/MM/yyyy hh:mm:ss tt")