网站建设资讯

NEWS

网站建设资讯

怎么将Java与C#时间进行转换

怎么将Java与C#时间进行转换,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

成都创新互联从2013年开始,先为张掖等服务建站,张掖等地企业,进行企业商务咨询服务。为张掖企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

Java中可以用System.currentTimeMillis() 获取当前时间的long形式,它的标示形式是从1970年1月1日起的到当前的毫秒的数。Web Service 是用Java写的,把这个long型数据转成timestamp再存入MySQL,所以用调用我们的Web Service可以直接把这个值传入。
但是.NET下计算时间的方式不太一样,它是计算单位是Ticks,这里就需要做一个C#时间转换。关于Ticks,msdn上是这样说的:
A single tick represents one hundred nanoseconds or one ten-millionth of a second. The value of this property represents the number of 100-nanosecond intervals that have elapsed since 12:00:00 midnight, January 1, 0001.
就是从公元元年元月1日午夜到指定时间的千万分之一秒了,为了和Java比较,说成万分之一毫秒。
( System.DateTime.UtcNow.Ticks - new DateTime(1970, 1, 1, 0, 0, 0).Ticks)/10000;
如果要得到Java中 System.currentTimeMillis() 一样的结果,就可以做Java与C#时间转换,写成上面那样,也可以这样写:

TimeSpan ts=new TimeSpan( System.DateTime.UtcNow.Ticks - new DateTime(1970, 1, 1, 0, 0, 0).Ticks);   (long)ts.TotalMilliseconds;

需要注意的是这里是用的 System.DateTime.UtcNow 而不是 System.DateTime.Now ,因为我们在东八区,如果用后面那种形式就会发现时间会和想象当中的差了8个小时。Java与C#时间转换到这里就彻底实现了。

关于怎么将Java与C#时间进行转换问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注创新互联行业资讯频道了解更多相关知识。


本文名称:怎么将Java与C#时间进行转换
转载来源:http://cdweb.net/article/gdeioj.html