Java~时间戳小知识

摘要:
大叔对java时间戳使用的总结Java里的Date对象有方法setTime,主要是将一个时间戳转成一个日期对象,而这个时间戳的标准是unix标准,即当前时间与1970/1/1相差的毫秒数,记得是毫秒!.net里的时间戳与java不同,所有需要特殊处理一个它的其实时间,而且.net里时间戳为double,如何要给java传输,需要转为long!

大叔对java时间戳使用的总结

  1. Java里的Date对象有方法setTime,主要是将一个时间戳转成一个日期对象,而这个时间戳的标准是unix标准,即当前时间与1970/1/1相差的毫秒数,记得是毫秒!
  2. .net里的时间戳与java不同,所有需要特殊处理一个它的其实时间,而且.net里时间戳为double,如何要给java传输,需要转为long!
  3. java与.net时间在进行传输时,不建议直接使用时间字符串,因为会有兼容问题,还是建议使用时间戳为标准.
  4. 开一个.net里的一个扩展方法,主要用来生成java的long类型及起始时间的时间戳
  5. 注意java里的setTime,使用的时间戳参数为UTC时间戳

C#里相关时间戳的扩展方法

    /// <summary>
    ///时间帮助类
    /// </summary>
    public classTimeHelper
    {
        /// <summary>
        ///日期转换成unix时间戳
        /// </summary>
        /// <param name="dateTime"></param>
        /// <returns></returns>
        public static longDateTimeToUnixTimestamp(DateTime dateTime)
        {
            var start = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Local);
            return Convert.ToInt64((dateTime -start).TotalMilliseconds);
        }
        /// <summary>
        ///unix时间戳转换成日期
        /// </summary>
        /// <param name="unixTimeStamp">时间戳(秒)</param>
        /// <returns></returns>
        public static DateTime UnixTimestampToDateTime(DateTime target, longtimestamp)
        {
            var start = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Local);
            returnstart.AddSeconds(timestamp);
        }
    }

在C#里为java传输时,需要把本地时间转为UTC时间

TimeHelper.DateTimeToUnixTimestamp(DateTime.Now.ToUniversalTime());

这样在java时,直接setTime后,就是本地时间了

    Date d1 = newDate();
    d1.setTime(1490232651510L);
    System.err.println(d1);

Java~时间戳小知识第1张

感谢各位的阅读!

知识在于积累!

免责声明:文章转载自《Java~时间戳小知识》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Matlab自定义函数的几种方法注册表手动添加Windows服务下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Linux shell获取时间和时间间隔(ms级别)

说明:在进行一些性能测试的时候,有时候我们希望能计算一个程序运行的时间,有时候可能会自己写一个shell脚本方便进行一些性能测试的控制(比如希望能运行N次取平均值等),总之,这其中有一个需求可能就是获取一个时间戳或时间差。 1. Linux shell获取时间的相关命令 time命令:获取一个程序的执行时间,可以获取到实际运行时间以及程序在用户态和内核态...

通过mybatis向数据库中插入日期数据

遇到的问题: 通过mybatis向数据库中插入日期格式数据,发现只有年月日, 没有小时分钟和秒 当你想在实体类中使用java.util.Date类型,而且还想在数据库中保存时分秒时, 解决办法: 你可以在xml中修改为: #{xxdate,jdbcType=TIMESTAMP} 就是将#{}中的jdbcType属性设置成TIMESTAMP,这样在保存的时候...

Python:日期和时间的处理模块及相关函数

Python:日期和时间的处理模块及相关函数   Python 提供 time 模块和 calendar 模块用于格式化日期和时间。 一、时间戳 在Python中,时间戳是以秒为单位的浮点小数,它是指格林威治时间自1970年1月1日(00:00:00 GMT)至当前时间的总秒数,也被称为Unix时间戳(Unix Timestamp)。时间戳唯一地标识某一刻...

windows ping 带时间戳

使用方法 新建文本文件,改后缀为 .bat 编辑该文件,将下面代码拷贝进去,ctrl+s保存一下,双击文件运行 效果图 运行效果: 一秒钟ping一次目标网络, 创建ping_host.log文件保存记录,会覆盖,意思你用这个脚本运行两次ping同一个host,第二次的文件会覆盖第一次的 中止方式: 第一种ctrl+c,会问你是否中止 键入 y回车 第二种...

MongoDB(6)- BSON 数据类型

BSON BSON是一种二进制序列化格式,用于在 MongoDB 中存储文档和进行远程过程调用 跟 JSON 的数据结构很像,但是支持更丰富的数据类型 数据类型 数据类型 序号 别名 备注 Double 1 double   String 2 string   Object 3 object   Array 4 array  ...

time模块和datetime模块详解

一、time模块  time模块中时间表现的格式主要有三种:   a、timestamp时间戳,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量   b、struct_time时间元组,共有九个元素组。   c、format time 格式化时间,已格式化的结构使时间更具可读性。包括自定义格式和固定格式。 1、时间格式转换图: 2、...