[英]What is the best way to convert this date format “2019-11-07T13:30:00+05:30” to utc date?
[英]How do I convert “2015-11-06T18:34:07+05:30” string to UTC DateTime object in C#
我需要將來自服務器的“ 2015-11-06T18:34:07 + 05:30”時間戳轉換為C#中的DateTime對象。然后,我需要將此DateTime轉換為UTC,以便在同步過程中進行比較。時間戳會有所不同。因此,如何創建與時區無關的功能,以從此時間戳字符串獲取UTC DateTime對象。
DateTime dt = DateTime.Parse("2015-11-06T18:34:07+05:30",
CultureInfo.InvariantCulture,
DateTimeStyles.AdjustToUniversal);
要么:
DateTime dt = DateTime.ParseExact("2015-11-06T18:34:07+05:30",
"yyyy-MM-dd'T'HH:mm:ssK",
CultureInfo.InvariantCulture,
DateTimeStyles.AdjustToUniversal);
要么:
DateTimeOffset dto = DateTimeOffset.Parse("2015-11-06T18:34:07+05:30",
CultureInfo.InvariantCulture);
DateTime dt = dto.UtcDateTime;
要么:
DateTimeOffset dto = DateTimeOffset.ParseExact("2015-11-06T18:34:07+05:30",
"yyyy-MM-dd'T'HH:mm:sszzz",
CultureInfo.InvariantCulture);
DateTime dt = dto.UtcDateTime;
當然,如果需要驗證,也可以使用TryParse
和TryParseExact
變體。
就個人而言,我建議將其保留為DateTimeOffset
而不要回到DateTime
。
還有Noda時間 :
OffsetDateTimePattern pattern = OffsetDateTimePattern.ExtendedIsoPattern;
OffsetDateTime odt = pattern.Parse("2015-11-06T18:34:07+05:30").Value;
DateTimeOffset dto = odt.ToDateTimeOffset();
DateTime dt = dto.UtcDateTime;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.