我需要转换" 2015-11-06T18:34:07 + 05:30"时间戳从服务器到C#中的DateTime对象。然后我需要将此DateTime转换为UTC以便在同步过程中进行比较。此时间戳中的时区可以变化。那么如何创建时区独立功能以获取UTC DateTime来自此时间戳字符串的对象。
答案 0 :(得分:1)
with self.input_target().open('r') as r, self.output_target().open('w') as w:
w.write(r.read())
或者:
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
。
还有Noda Time:
DateTime