Erstellen datetime-Objekt aus der anderen Zeitzone in der Powershell
Grundsätzlich bin ich auf der Suche nach einem Weg, um zu konvertieren datetime einer bestimmten Zeitzone zu anderen Zeitzone während der Einnahme von DST in Betracht zu. z.B.
Was ist die Zeit in "Pazifik Standard Zeit", wenn es, sagen wir, 2012/9/29 9:00 Uhr in "Tokyo Standard Time" ?
Fand ich einige Lösungen im Internet zum konvertieren der lokalen Maschine Zeit zu anderen Zeitzone.
$ToTimeZoneObj = [system.timezoneinfo]::GetSystemTimeZones() | Where-Object {$_.id -eq $ToTimeZone}
$TargetZoneTime = [system.timezoneinfo]::ConvertTime($datetime, $ToTimeZoneObj)
Ich bin am überlegen ob ich eine datetime-Objekt von einer Zeitzone unterscheidet sich von der lokalen Maschine ist, kann ich das dann verwenden Sie die Lösungen, die ich gefunden, oder gibt es andere Möglichkeiten, das zu tun, was ich brauche?
Dank
Du musst angemeldet sein, um einen Kommentar abzugeben.
Diese Lösung funktionierte gut für mich:
Anschließend können Sie manipulieren die $csttime variable nur wie ein datetime-Objekt:
Referenzen:
http://msdn.microsoft.com/en-us/library/system.timezoneinfo.converttimefromutc(v=vs. 110).aspx
http://technet.microsoft.com/en-us/library/ee692801.aspx
Arbeiten mit Zeitzonen kann ziemlich tricky. Gott sei Dank für die updates, die Sie Hinzugefügt .NET 3.5 und 4.0. Ich war bei mehreren Zeitzone Projekte und in 2.0 ist beinahe unmöglich war, ohne Durchlaufen der registry und erstellen Ihre eigene Liste von Zeitzonen.
Nun können Sie eine Liste der Zeitzonen mithilfe der TimeZoneInfo-Klasse (die Sie scheinen vertraut zu sein mit):
http://msdn.microsoft.com/en-us/library/system.timezoneinfo.aspx
Nur Vorsicht, dass ein system, dass kann nicht sein, der automatische Updates von Windows Update haben könnten verschiedene Zeitzonen als ein system, das ist völlig up to date. Microsoft schiebt-updates für Zeitzonen, wenn nötig.
Ich denke, dein code scheint OK. Um ehrlich zu sein, ich bin nicht viel von einem PowerShell-dev (C# für mich), aber es scheint gut zu sein.