【转自: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)

  1. //时间戳转化为Sting或Date
  2. SimpleDateFormat format =  newSimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  3. Long time=newLong(445555555);
  4. String d = format.format(time);
  5. Date date=format.parse(d);
  6. System.out.println("Format To String(Date):"+d);
  7. 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)转化为时间戳

  1. //Date或者String转化为时间戳
  2. SimpleDateFormat format =  newSimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  3. String time="1970-01-06 11:45:55";
  4. Date date = format.parse(time);
  5. System.out.print("Format To times:"+date.getTime());

运行结果:

Format To times:445555000

4、注意

定义SimpleDateFormat时newSimpleDateFormat("yyyy-MM-dd HH:mm:ss");里面字符串头尾不能有空格,有空格那是用转换时对应的时间空格也要有空格(两者是对应的),比如:

  1. //Date或者String转化为时间戳
  2. SimpleDateFormat format =  newSimpleDateFormat(" yyyy-MM-dd HH:mm:ss ");
  3. String time="1970-01-06 11:45:55";
  4. Date date = format.parse(time);
  5. 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转化为时间戳

  1. SimpleDateFormat format =  newSimpleDateFormat(" yyyy-MM-dd HH:mm:ss ");
  2. String time=" 1970-01-06 11:45:55 ";//注:改正后这里前后也加了空格
  3. Date date = format.parse(time);
  4. System.out.print("Format To times:"+date.getTime());

运行结果:

Format To times:445555000

一、java中Date类中的getTime()是获取时间戳的,java中生成的时间戳精确到毫秒级别,而unix中精确到秒级别,所以通过java生成的时间戳需要除以1000。
二、下面是java代码

  1. import java.text.ParseException;
  2. import java.text.SimpleDateFormat;
  3. import java.util.Date;
  4. public class Baidu {
  5. /**
  6. * @param args
  7. */
  8. public static void main(String[] args) {
  9. try {
  10. String time = "2011/07/29 14:50:11";
  11. Date date = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss").parse(time);
  12. long unixTimestamp = date.getTime()/1000;
  13. System.out.println(unixTimestamp);
  14. } catch (ParseException e) {
  15. e.printStackTrace();
  16. }
  17. }
  18. }

java_时间戳与Date_相互转化的更多相关文章

  1. java_时间戳与Date_相互转化的实现代码

    转载自: java_时间戳与Date_相互转化的实现代码

  2. C# 时间戳与时间相互转化

    using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace 时间戳d ...

  3. ios 时间戳 当前时间 相互转化

    1.今天在做一个webservice的接口的时候,被要求传一个时间戳过去,然后就是开始在Google上找 2.遇到两个问题,一,当前时间转化为时间戳,二,获取的当前时间和系统的时间相差8个小时 一,转 ...

  4. 第十章、time模块

    目录 第十章.模块 第十章.模块 time模块 import time 时间戳 表示:是从1970年1月1日00:00:00开始按秒计算的偏移量. time_stamp = time.time() p ...

  5. 包、time、datetime、hashlib和hmac、request、re

    目录 包 包的特点 time模块 datetime模块 hashlib模块和hmac模块 hmac密钥(加盐) typing模块 request模块 正则模块 以下必须得记住 哪些做了解 包 包,这里 ...

  6. 日期与时间戳相互转化(js)

    function datetime_to_unix(datetime){     var tmp_datetime = datetime.replace(/:/g,'-');     tmp_date ...

  7. iOS中时间与时间戳的相互转化

    //获取当前系统时间的时间戳 #pragma mark - 获取当前时间的 时间戳 +(NSInteger)getNowTimestamp{ NSDateFormatter *formatter = ...

  8. JS 日期与时间戳相互转化

    1.日期格式转时间戳 function getTimestamp(time) { return Date.parse(new Date(time)); } 2.时间戳转日期格式 function tr ...

  9. js 时间戳的转化,js 日期转成标准字符串,日期格式的相互转化

    1.时间的获取 var myDate = new Date(); myDate.getYear(); //获取当前年份(2位) myDate.getFullYear(); //获取完整的年份(4位,1 ...

随机推荐

  1. PHP变量、数据类型、字符串、运算符、条件语句、循环语句、数组、函数

    PHP 简介: php :是一门动态交互的计算机语言  静态交互 html  css  js 但凡是动态交互的 都需要服务器. php都是以.php结尾的文件 Html文件里不能写php代码,但是ph ...

  2. 从零开始利用vue-cli搭建简单音乐网站(一)

    最近在学习vue框架,练习了一些例子之后,想着搭建一个vue项目,了解到官方有提供一个vue-cli工具来搭建项目脚手架,尝试了一下,写下博客来记录一下. 一.工具环境 1.node.js 6.10. ...

  3. elasticsearch查询方式

    1.query string a).GET /index/type/_search ===>>查询所有 b).GET /index/type/_search?q=filed:value&a ...

  4. 【Python图像特征的音乐序列生成】图像特征在旋律生成中有什么用

    jishude 首先援引一个资料网页:http://www.cosmosshadow.com/ml/%E5%BA%94%E7%94%A8/2016/03/01/%E9%9F%B3%E4%B9%90%E ...

  5. Codeforces Round #321 (Div. 2) B. Kefa and Company (尺取)

    排序以后枚举尾部.尺取,头部单调,维护一下就好. 排序O(nlogn),枚举O(n) #include<bits/stdc++.h> using namespace std; typede ...

  6. 10.1 plan

    1951    [Sdoi2010]古代猪文  Sdoi2010 Contest2   807 1928 1566    [NOI2009]管道取珠       806 1429 2756    [S ...

  7. OpenCascade:Topo类型转换

    OpenCascade:Topo类型转换 TopoDS_Edge newEdge; if (oldShape.ShapeType()==TopAbs_EDGE) newEdge=TopoDS::Edg ...

  8. 【转】Popclip的JSON格式化扩展

    http://liuyunclouder.github.io/2016/09/29/JSONizer:Popclip的JSON格式化扩展 作为一个MAC党,不好好利用MAC的神兵利器,简直就是罪过.A ...

  9. 用C#(ASP.Net)在Exchange Server环境下发送邮件

    普通的邮件, 用System.Net.Mail 类 或 System.Web.Mail 类 处理即可, 但是Exchange Server 环境下, 这两个类起不了作用-------至少目前我看到的情 ...

  10. ASP.NET 验证控件报错:WebForms UnobtrusiveValidationMode 需要“jquery”ScriptResourceMapping。

    在Visual Studio 2012中添加并使用验证控件时,可能会遇到如下的错误: WebForms UnobtrusiveValidationMode 需要“jquery”ScriptResour ...