获取原始日期时间偏移量

时间:2018-04-25 16:39:23

标签: c# .net

我有以下代码

string dateString = "2018-04-20T12:22:32.8526432-05:30";

var objDate = DateTime.Parse(dateString);  

string newDateString = objDate.ToString();  //"4/20/2018 1:52:32 PM"

将字符串解析为DateTime后,如何从objDate获取原始DateTime偏移量,即-5:30?我尝试了下面的代码,但它给出了局部偏移,即-4:00但不是-5:30。

var offset = TimeZone.CurrentTimeZone.GetUtcOffset(objDate);

请注意,我希望从DateTime对象(objDate)获得偏移,而不是从字符串变量dateString。

1 个答案:

答案 0 :(得分:-1)

如@Evk所述,DateTime类型不存储偏移量。相反,正如@maccettura

所建议的那样
string dateString = "2018-04-20T12:22:32.8526432-05:30";
var offset = DateTimeOffset.Parse(dateString);

// returns -05:30:00
Console.WriteLine(offset.Offset);