java_时间戳与Date_相互转化
【转自:http://blog.csdn.net/heng615975867/article/details/36016617】
1、时间戳的定义
时间戳是指文件属性里的创建、修改、访问时间。
数字时间戳技术是数字签名技术一种变种的应用。在电子商务交易文件中,时间是十分重要的信息。在书面合同中,文件签署的日期和签名一样均是十分重要的防止文件被伪造和篡改的关键性内容。数字时间戳服务(DTS:digital time stamp service)是网上电子商务安全服务项目之一,能提供电子文件的日期和时间信息的安全保护。
编辑本段组成部分
时间戳(time-stamp)是一个经加密后形成的凭证文档,它包括三个部分:
(1)需加时间戳的文件的摘要(digest);
(2)DTS收到文件的日期和时间;
(3)DTS的数字签名。
一般来说,时间戳产生的过程为:用户首先将需要加时间戳的文件用Hash编码加密形成摘要,然后将该摘要发送到DTS,DTS在加入了收到文件摘要的日期和时间信息后再对该文件加密(数字签名),然后送回用户。
书面签署文件的时间是由签署人自己写上的,而数字时间戳则不然,它是由认证单位DTS来加的,以DTS收到文件的时间为依据。
2、时间戳转化为Date(or String)
- //时间戳转化为Sting或Date
- SimpleDateFormat format = newSimpleDateFormat("yyyy-MM-dd HH:mm:ss");
- Long time=newLong(445555555);
- String d = format.format(time);
- Date date=format.parse(d);
- System.out.println("Format To String(Date):"+d);
- System.out.println("Format To Date:"+date);
运行结果:
Format To String(Date):1970-01-06 11:45:55
Format To Date:Tue Jan 06 11:45:55 CST 1970
3、Date(or String)转化为时间戳
- //Date或者String转化为时间戳
- SimpleDateFormat format = newSimpleDateFormat("yyyy-MM-dd HH:mm:ss");
- String time="1970-01-06 11:45:55";
- Date date = format.parse(time);
- System.out.print("Format To times:"+date.getTime());
运行结果:
Format To times:445555000
4、注意
定义SimpleDateFormat时newSimpleDateFormat("yyyy-MM-dd HH:mm:ss");里面字符串头尾不能有空格,有空格那是用转换时对应的时间空格也要有空格(两者是对应的),比如:
- //Date或者String转化为时间戳
- SimpleDateFormat format = newSimpleDateFormat(" yyyy-MM-dd HH:mm:ss ");
- String time="1970-01-06 11:45:55";
- Date date = format.parse(time);
- System.out.print("Format To times:"+date.getTime());
运行结果(报错):
Exception in thread "main"Java.text.ParseException: Unparseable date: "1970-01-06 11:45:55"
改正:
//Date或者String转化为时间戳
- SimpleDateFormat format = newSimpleDateFormat(" yyyy-MM-dd HH:mm:ss ");
- String time=" 1970-01-06 11:45:55 ";//注:改正后这里前后也加了空格
- Date date = format.parse(time);
- System.out.print("Format To times:"+date.getTime());
运行结果:
Format To times:445555000
一、java中Date类中的getTime()是获取时间戳的,java中生成的时间戳精确到毫秒级别,而unix中精确到秒级别,所以通过java生成的时间戳需要除以1000。
二、下面是java代码
- import java.text.ParseException;
- import java.text.SimpleDateFormat;
- import java.util.Date;
- public class Baidu {
- /**
- * @param args
- */
- public static void main(String[] args) {
- try {
- String time = "2011/07/29 14:50:11";
- Date date = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss").parse(time);
- long unixTimestamp = date.getTime()/1000;
- System.out.println(unixTimestamp);
- } catch (ParseException e) {
- e.printStackTrace();
- }
- }
- }
java_时间戳与Date_相互转化的更多相关文章
- java_时间戳与Date_相互转化的实现代码
转载自: java_时间戳与Date_相互转化的实现代码
- C# 时间戳与时间相互转化
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace 时间戳d ...
- ios 时间戳 当前时间 相互转化
1.今天在做一个webservice的接口的时候,被要求传一个时间戳过去,然后就是开始在Google上找 2.遇到两个问题,一,当前时间转化为时间戳,二,获取的当前时间和系统的时间相差8个小时 一,转 ...
- 第十章、time模块
目录 第十章.模块 第十章.模块 time模块 import time 时间戳 表示:是从1970年1月1日00:00:00开始按秒计算的偏移量. time_stamp = time.time() p ...
- 包、time、datetime、hashlib和hmac、request、re
目录 包 包的特点 time模块 datetime模块 hashlib模块和hmac模块 hmac密钥(加盐) typing模块 request模块 正则模块 以下必须得记住 哪些做了解 包 包,这里 ...
- 日期与时间戳相互转化(js)
function datetime_to_unix(datetime){ var tmp_datetime = datetime.replace(/:/g,'-'); tmp_date ...
- iOS中时间与时间戳的相互转化
//获取当前系统时间的时间戳 #pragma mark - 获取当前时间的 时间戳 +(NSInteger)getNowTimestamp{ NSDateFormatter *formatter = ...
- JS 日期与时间戳相互转化
1.日期格式转时间戳 function getTimestamp(time) { return Date.parse(new Date(time)); } 2.时间戳转日期格式 function tr ...
- js 时间戳的转化,js 日期转成标准字符串,日期格式的相互转化
1.时间的获取 var myDate = new Date(); myDate.getYear(); //获取当前年份(2位) myDate.getFullYear(); //获取完整的年份(4位,1 ...
随机推荐
- Java ActiveMQ 示例
所需引入Jar包: jms-1.1.jar activemq-all-5.15.0.jar 生产者 package com.mousewheel.demo; import javax.jms.Conn ...
- 使用Calendar来获取当前日期和时间
1 package com.java.test; 2 3 import java.text.SimpleDateFormat; 4 import java.util.Calendar; 5 6 pub ...
- ABAP系统字段
SY是一个全局的结构体变量,在词典中已定义过.输入SE11到ABAP字典中. 输入SYST点击显示 附录D 系统字段功能列表 字段名 类型 长度 应用目的 说明 ABCDE CHAR 26 常量 字母 ...
- mysqldatadir 转移
当mysql data路径与原始目录不一致时 ,请在mysql 安装目录下my-default.ini 进行设置,取消对应#注释的地址,设置新地址,保存,重新启动,即可. 从网上各种搜索啊,各种尝试, ...
- 手工恢复OSSIM数据库密码
1,现象 今天需要远程连接ossim的mysql数据库读取些东西,于是登录ossim的终端,发现这个mysql客户端无法直接登录,使用自己安装时候那些口令都不行 alienvault:~# mysql ...
- BZOJ 4881: [Lydsy2017年5月月赛]线段游戏
4881: [Lydsy2017年5月月赛]线段游戏 Time Limit: 3 Sec Memory Limit: 256 MBSubmit: 164 Solved: 81[Submit][St ...
- 日常-acm-三位数反转
输入一个三位数,分理出它的百位,十位和个位,反转后输出. 样例输入: 127 样例输出: 721 tips:注意最后一位为0的情况,如360,输出063 #include <iostream&g ...
- Core Data stack
https://developer.apple.com/library/content/documentation/DataManagement/Devpedia-CoreData/coreDataS ...
- Sequence II
6990: Sequence II 时间限制: 3 Sec 内存限制: 128 MB提交: 206 解决: 23[提交][状态][讨论版][命题人:admin] 题目描述 We define an ...
- 绘制方式和OpenGL枚举对应关系
绘制方式和OpenGL枚举对应关系 图元类型 OpenGL枚举量 点 GL_POINTS 线 GL_LINES 条带线 GL_LINE_STRIP 循环线 GL_LINE_LOOP 独立三角形 GL_ ...