繁体   English   中英

无法将此字符串转换为Powershell中的Date对象

[英]Cannot convert this string to Date object in Powershell

我已经为此苦苦挣扎了一段时间,并且尝试了所有可以找到的东西,但是还没有成功。 我需要将此字符串转换为Powershell日期对象:

20180802 16:30:10

每次我尝试ParseExact时,都表示无法将字符串识别为有效的日期/时间格式。

以下工作完美:

[DateTime]::ParseExact('20180802 16:30:10', 'yyyyMMdd HH:mm:ss', [CultureInfo]::InvariantCulture)

我敢打赌,您的问题是24小时制。

Pawel Dyl的有用答案是正确而强大的解决方案。

只是为了提供一种在类似情况下可能有用的快捷方式,在这种情况下,只需简单的文本重新格式化即可使[datetime] 强制转换识别包含日期/时间表示形式的字符串:

20180802 16:30:10转换为2018-08-02 16:30:10将起作用:

PS> [datetime] ('20180802 16:30:10' -replace '^(\d{4})(\d{2})', '$1-$2-')

Thursday, August 2, 2018 4:30:10 PM  # sample output on a US-English system

请注意,PowerShell中的[datetime]强制转换使用不变文化 ,就像PowerShell在许多情况下一样

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM