国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Java > 正文

java_時間戳與Date_相互轉化的實現代碼

2019-11-26 13:36:11
字體:
來源:轉載
供稿:網友

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:55Format 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(); } } } 

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 自治县| 土默特左旗| 新民市| 疏附县| 新兴县| 潼南县| 额济纳旗| 高安市| 霍山县| 上饶市| 洛南县| 双峰县| 甘谷县| 莱芜市| 通州区| 黄冈市| 伊宁市| 普兰店市| 资源县| 呈贡县| 嘉定区| 响水县| 崇仁县| 绥中县| 明水县| 铜陵市| 民权县| 闵行区| 简阳市| 兖州市| 交口县| 珠海市| 三江| 无为县| 揭西县| 于田县| 呼和浩特市| 于都县| 汕尾市| 秦皇岛市| 稷山县|