C# string in DateTime mit timezone
Will ich formatieren string : "2012-04-20 10:10:00+0200" um ein dateTime-format.
also ich denke, es muss "yyyy-MM-dd hh:mm:ss zzz"?
als ich versuchte, diese
//starttime = {20/04/2012 10:10:00} without my +0200!
DateTime starttime = Convert.ToDateTime("2012-04-20 10:10:00+0200",CultureInfo.CurrentCulture);
//And this gave me a format exception : {System.FormatException: String was not recognized as a valid DateTime.
DateTime result = DateTime.ParseExact("2012-04-20 10:10:00+0200", "yyyy-MM-dd hh:mm:ss zzz", CultureInfo.InvariantCulture);
LÖSUNG GEGEBEN, die DURCH "V4Vendetta" :
Sollten Sie versuchen, mit DateTimeOffset anstatt die DateTime -
DateTimeOffset result = DateTimeOffset.Parse("2012-04-20 10:10:00+0200",CultureInfo.InvariantCulture);
Hier bekommen Sie den Offset (2 STD), zu denen errechnet werden kann, mit Ihrer DateTime (10:10) - Wert und Holen Sie sich Ihre gewünschten out-put (result.DateTime + Ergebnis.Offset)
- Schau mal hier: link
- Wie pro meine Kenntnisse Ihre Eingaben werden sollte "2012-04-20 10:10:00+02:00"
- beter ? 🙂
- Ja, es wird Ihnen helfen, auf Ihre Funktion Fragen ;).
- Nützlich MSDN-link für die Integration Termine/Zeiten .NET msdn.microsoft.com/en-us/library/bb882584(v=vs. 110).aspx
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sollten Sie versuchen, mit
DateTimeOffset
statt derDateTime
Bekommen Sie hier die
Offset
(2 Stunden) zu dem werden konnte, berechnete Sie mit IhremDateTime
(10:10) - Wert und Holen Sie sich Ihre gewünschten out-put (result.DateTime + Ergebnis.Offset)Dem MSDN-Artikel hier zu haben scheint, genau das, was du bist suchen für. Pro Artikel sagte, Sie sollten mit
{0:MM/dd/yy H:mm:ss zzz}
verwenden "2012-04-20 10:10:00 +02:00" statt " "2012-04-20 10:10:00+0200"
Versuchen Sie dies: