将datetime从local转换为UTC,反之亦然

时间:2012-12-05 20:32:00

标签: vb.net datetime utc datetime-format

我以为我知道如何做到这一点,但似乎我做错了。我有两个日期,一个是从json feed检索的已发布日期时间,并以UTC格式设置。 然后我使用MSQM.message.arrivedtime,我被告知将其设置为您的计算机时间(本地)作为获取日期的另一个日期,但我将其转换为UTC。现在的问题是有时候获取日期是在发布的日期时间之前,而不是这种情况。以下是我工作流程的一部分:

 fetchDate as string = message.ArrivedTime.ToString
     ("yyyy-MM-dd hh:mm:ss",  CultureInfo.CreateSpecificCulture("en-US"))

....示例日期:2012-12-05 07:59:12 然后是一些更多的代码和其他函数......这是解析出的日期时间

2012-12-05 12:59:34

所以现在我将fetchDate转换为UTC:

Dim nowDate As DateTime = DateTime.ParseExact
    (fetchDate, "yyyy-MM-dd HH:mm:ss", Globalization.CultureInfo.InvariantCulture)
fetchDate = nowDate.ToUniversalTime.ToString
 ("yyyy-MM-dd HH:mm:ss", CultureInfo.InvariantCulture)

现在fetchDate = 2012-12-05 12:59:12

这是一个案例。为什么会这样,谁能看到我在这里做错了什么?

0 个答案:

没有答案