如何将HEX数据转换为Datetime

时间:2013-12-04 10:38:20

标签: c# .net

我有一个类似于这个529CD17C的十六进制字符串。这相当于一个日期时间12/2/2013 06:29:16 PM。(即MM / dd / yyyy hh:mm:ss AM / PM)。如何我可以用c#编码吗

2 个答案:

答案 0 :(得分:1)

您正在使用UNIX时间戳。首先,您需要将其转换为整数值,然后继续将该秒数添加到纪元(1970年1月1日)。

以下是一个例子:

string hexValue = "529CD17C";
int secondsAfterEpoch = Int32.Parse(hexValue, System.Globalization.NumberStyles.HexNumber);
DateTime epoch = new DateTime(1970, 1, 1);
DateTime myDateTime = epoch.AddSeconds(secondsAfterEpoch);
Console.WriteLine(myDateTime);

希望这很有用!

答案 1 :(得分:0)

以下是具有相同问题的人http://social.msdn.microsoft.com/Forums/en-US/c9624a19-1ef6-4f60-b063-527beb36de1d/hex-string-to-datetime-conversion看起来所提供的功能可以正常工作。

他们首先将HEX值转换为整数,然后将整数转换为日期类型。