繁体   English   中英

Powershell-将军事时间字符串转换为日期时间

[英]Powershell - convert military time string to datetime

我正在寻找一种将军用时间字符串(“ 22:12:02”)转换为日期时间对象的方法。

这是代码示例:

$TimePrevious = $Null
[array]$TimeArray = "22:12:02.000", "22:12:03.000", "23:12:02.000"

$TimeArray | ForEach-Object {
    $TimeCurrent = $_.Substring(0,8)
    $TimeDifference = [datetime]$TimeCurrent.TimeOfDay - [datetime]$TimePrevious.TimeOfDay
    If ($TimeDifference.Second -lt "10") {Write-Host "$_ is less than 10 seconds"}
    $TimePrevious = $_
    }

错误显示为“无法将类型为“ System.TimeSpan”的“ 22:12:02”值转换为类型“ System.DateTime”

默认解析器似乎可以使用:

[datetime]"22:12:02"

2013年3月7日,星期四,晚上10:12:02

抱歉。 我刚刚得到这个工作:

$TimePrevious = $Null
[array]$TimeArray = "22:12:02.000", "22:12:03.000", "23:12:02.000"

$TimeArray | ForEach-Object {
    $TimeCurrent = $_.Substring(0,8)
    $TimeDifference = [datetime]$TimeCurrent - [datetime]$TimePrevious
    If ($TimeDifference.TotalSeconds -lt "10") {Write-Host "$_ is less than 10 seconds"}
    $TimePrevious = $_
    }

感谢您的快速答复。

暂无
暂无

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

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