请-如何将DateTime十进制转换为DateTime标准?
我的代码错了:
$decimalHour = 104310
$hour=[Math]::Truncate($decimalHour)
$minute=($decimalHour - $hour) * 60
$second = [int](($minute - ([Math]::Truncate($minute))) * 60)
$minute=[Math]::Truncate($minute)
$date=[datetime]::Parse("$day_0`:$hour`:$minute`:$second")
""
""
"Jours : " + $date.day
"Heures : " + $date.Hour
"Minutes : " + $date.Minute
"Secondes : " + $date.Second
# "Times : " + $date.ToLongTimeString()
感谢Arnold
使用New-TimeSpan
cmdlet构造System.TimeSpan
实例:
$seconds = 104310.0
$timeSpan = New-TimeSpan -Seconds ([Math]::Truncate($seconds))
$timeSpan | Select-Object Days, Hours, Minutes, Seconds
以上收益率:
Days Hours Minutes Seconds
---- ----- ------- -------
1 4 58 30
在循环中处理多个字符串值:
"104310.0", "110433" | ForEach-Object {
New-TimeSpan -Seconds ([Math]::Truncate($_))
} | Select-Object Days, Hours, Minutes, Seconds