Powershell 将不常见的字符串日期/时间数据转换为日期时间数据类型

Powershell 将不常见的字符串日期/时间数据转换为日期时间数据类型,powershell,type-conversion,string-to-datetime,Powershell,Type Conversion,String To Datetime,我正在尝试实现一个PowerShell脚本来比较证书文件(Jave密钥库)中的日期时间 然而,我从keystore文件提取的DateTime格式非常复杂,如下例所示 星期一至三月13日06:40:26 CDT 2023 9月18日星期六20:41:47 CDT 2027 它在字符串中包括时间和时区,但实际上我只需要2023年3月13日这样的日期 有谁能帮我建议一下如何将这个字符串返回为DateTime进行比较? 非常感谢。您可以使用[datetime]::ParseExact()方法执行以下操作

我正在尝试实现一个PowerShell脚本来比较证书文件(Jave密钥库)中的日期时间

然而,我从keystore文件提取的DateTime格式非常复杂,如下例所示

星期一至三月13日06:40:26 CDT 2023

9月18日星期六20:41:47 CDT 2027

它在字符串中包括时间和时区,但实际上我只需要2023年3月13日这样的日期

有谁能帮我建议一下如何将这个字符串返回为DateTime进行比较?
非常感谢。

您可以使用
[datetime]::ParseExact()
方法执行以下操作:

$dateString = 'Mon Mar 13 06:40:26 CDT 2023'

$date = [datetime]::ParseExact($dateString, 'ddd MMM dd HH:mm:ss CDT yyyy', [cultureinfo]'en-US')
$date.ToString('dd-MMM-yyyy')
结果:

2023年3月13日


CDT表示中央时区(UTC-6),切换为夏令时-->中央夏令时(CDT),比UTC晚五小时

$dateString = 'Mon Mar 13 06:40:26 CDT 2023'

$date = [datetime]::ParseExact($dateString, 'ddd MMM dd HH:mm:ss CDT yyyy', [cultureinfo]'en-US')
$date.ToString('dd-MMM-yyyy')
结果:

2023年3月13日


CDT是指中央时区(UTC-6),切换到夏令时-->中央夏令时(CDT),比UTC晚五个小时

你好,提奥,这非常清楚,对我很有帮助。我真的很感谢你的帮助:)你好,提奥,这对我很清楚,也很有帮助。我非常感谢你的帮助:)