我有以下格式的时间戳:
20110316 11:03:22.276919 -0400s
Run Code Online (Sandbox Code Playgroud)
顺便说一句,有人知道这个日期时间的末尾是什么吗?
我试图将此转换为它最初来自的时区中的datetime对象。但是执行以下转换:
DateTime.ParseExact(source, "yyyyMMdd HH:mm:ss.FFFFFF zzzz\\s", CultureInfo.CurrentCulture)
Run Code Online (Sandbox Code Playgroud)
自动将其转换为我的本地时区。
我期望的日期时间是我的日期时间上午11:03,但是由于我所在的时区比该时间戳晚2小时,因此转换返回的时间是上午9:03。除了执行字符串截断以忽略时区之外,还有什么方法可以解析日期,同时将其保留在其所在的时区中?
使用DateTimeOffset
DateTimeOffset dto = DateTimeOffset.ParseExact("20110316 11:03:22.276919 -0400s", @"yyyyMMdd HH\:mm\:ss\.FFFFFF zzz\s", null);
Console.WriteLine(dto.DateTime);
Run Code Online (Sandbox Code Playgroud)