转换日期时间小数



请-如何将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-TimeSpancmdlet构造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

最新更新