如何将日期时间字符串格式化为不同文化的 FullDatetimeFormat?

问题描述 投票:0回答:1

我需要不同文化的 FullDateTime 格式的日期时间值的字符串输出。 结果应与在目标文化(此处为“de-DE”)下运行的系统上此命令的输出相同:

$date = [datetime]::new(2022,2,28,10,33,0)
$date.ToString('F')
# Montag, 28. Februar 2022 10:33:00

这是我期望工作的 Powershell 代码:

$de = [cultureInfo]::new('de-DE') # sample of any target-culture
[datetime]::ParseExact($date, $de.DateTimeFormat.FullDateTimePattern, $de)

...但这会引发错误。

我不能在我的项目中使用 ParseExact,因为我需要尊重为该文化所做的日期时间格式的任何(手动)修改。

powershell datetime cultureinfo
1个回答
0
投票

最后的答案很简单。 'toString' 有第二个参数:

$de = [cultureInfo]::new('de-DE')
$date.ToString($de.DateTimeFormat.FullDateTimePattern, $de)

以同样的方式适用于任何其他目标文化。

© www.soinside.com 2019 - 2024. All rights reserved.