java_타임 스탬프 및 Date_상호 전환의 실현 코드

1. 타임 스탬프의 정의
타임 스탬프는 파일 속성의 생성, 수정, 접근 시간을 가리킨다.
디지털 타임 스탬프 기술은 디지털 서명 기술의 변종 응용이다.전자상거래 거래 문서에서 시간은 매우 중요한 정보이다.서면 계약에서 서류가 서명된 날짜는 서명과 마찬가지로 매우 중요한 서류가 위조되고 왜곡되는 것을 방지하는 관건적인 내용이다.디지털 타임 스탬프 서비스(DTS:digital time stamp 서비스)는 인터넷 전자상거래 보안 서비스 프로젝트 중 하나로 전자 파일의 날짜와 시간 정보를 안전하게 보호할 수 있다.
타임 스탬프(time-stamp)는 암호화된 자격 증명 문서로 세 가지 부분을 포함합니다.
  • 스탬프가 필요한 파일의 요약 (digest);  
  • DTS에서 파일을 받은 날짜와 시간;  
  • 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. 날짜(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
    1. 자바에서 Date 클래스의 getTime () 는 시간 스탬프를 가져옵니다. 자바에서 생성된 시간 스탬프는 밀리초까지 정확하고, 유닉스에서 초까지 정확하기 때문에 자바를 통해 생성된 시간 스탬프는 1000으로 나누어야 합니다.
    2. 다음은 자바 코드
    
    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(); 
    } 
    } 
    } 
    
    이상은 본문의 전체 내용입니다. 여러분의 학습에 도움이 되고 저희를 많이 응원해 주십시오.

    좋은 웹페이지 즐겨찾기