function Countdown-NewYear { $dateNow = [DateTime]::Now $dateNewYear = [DateTime]::ParseExact( [string] ($dateNow.Year+1) + "-01-01-00-00-01", "yyyy-MM-dd-hh-mm-ss", $null) return $dateNewYear - $dateNow } $newYearCounter = Countdown-NewYear Write-Host "There are $($newYearCounter.Days) days and $($newYearCounter.Hours) hours until New Year"
Kod jest prawie identyczny jak w poprzednim odliczaczu. Tylko teraz dokładność czasu będzie uzależniona od odległości. Jeżeli do Nowego Roku będzie więcej niż 1 dzień to odliczacz przedstawi wartość w jednostkach dni, jeżeli będzie mniej niż jedna godzina, ale więcej niż jedna minuta to będzie w minutach, itp.
function ToCountdownString { param ( [timespan] $timeSpan ) if($timeSpan.Days -gt 1) { return "$($timeSpan.Days) days" } if($timeSpan.Hours -gt 1) { $timeRemains = $timeSpan.Days * 24 + $timeSpan.Hours return "$timeRemains hours" } if($timeSpan.Minutes -gt 1) { $timeRemains = $timeSpan.Hours * 60 + $timeSpan.Minutes return "$timeRemains minutes" } if($timeSpan.Seconds -gt 1) { $timeRemains = $timeSpan.Minutes * 60 + $timeSpan.Seconds return "$timeRemains seconds" } $timeRemains = $timeSpan.Seconds * 1000 + $timeSpan.Milliseconds return "$timeRemains milliseconds" }Kod wywołania wygląda następująco:
$newYearCounter = Countdown-NewYear $countdown = ToCountdownString -timeSpan $newYearCounter Write-Host "There are $countdown until New Year"Nie przesadzajmy, nie musisz sprawdzać tego kodu w Sylwestra:) Idź i spędź ten czas z przyjaciółmi, ukochaną osobą albo z rodziną.
Brak komentarzy:
Prześlij komentarz