Java中系统时间与C#DateTime对象之间转换方法

在最近所做项目中,需要在.NET环境里将Java中生成的Json字符串解析过来使用。而Java中传回的数据存在时间对象,是通过 System.currentTimeMillis() 从系统中读取的时间。

通过查询资料,Java中是计算现在到1970-1-1之间的毫秒数。而C#是从0001-1-1开始的,所以存在一个偏差量。

在获取时间上加上这个偏差即可。

DateTime UTCBaseTime = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);
DateTime dt = UTCBaseTime.Add(new TimeSpan(JavaMS * TimeSpan.TicksPerMillisecond)).ToLocalTime();


你可能感兴趣的:(.NET)