유닉스 타임스탬프(Unix Timestamp) Java에서 사용하기

LeeYulhee·2023년 11월 21일
0

👉 유닉스 타임스탬프(Unix Timestamp)


  • 1970년 1월 1일 자정(UTC) 이후의 시간을 초 단위로 나타낸 값
  • 유닉스 및 유닉스 기반 시스템 및 다양한 애플리케이션 등에서 시간을 표현하는 표준 방식으로 널리 사용됨
  • 타임스탬프를 사용하면 날짜와 시간을 단순한 숫자로 표현할 수 있어서, 날짜 및 시간 데이터의 계산과 비교가 용이



👉 Java에서 유닉스 타임스탬프 사용 방법


  • 현재 유닉스 타임스탬프 얻기
    long currentUnixTime = System.currentTimeMillis() / 1000; // 초 단위로 변환
    • System.currentTimeMillis() 메소드를 사용하여 현재 시간을 밀리초 단위의 유닉스 타임스탬프로 얻을 수 있음
    • 1970년 1월 1일 자정 UTC 이후의 밀리초로 표현
  • 특정 날짜의 유닉스 타임스탬프 얻기
    Calendar calendar = Calendar.getInstance();
    calendar.set(Calendar.YEAR, 2023);
    calendar.set(Calendar.MONTH, Calendar.JANUARY);
    calendar.set(Calendar.DAY_OF_MONTH, 1);
    long unixTime = calendar.getTimeInMillis() / 1000;
    • Calendar 또는 LocalDateTime 클래스를 사용하여 특정 날짜의 유닉스 타임스탬프를 구할 수 있음

      LocalDateTime dateTime = LocalDateTime.of(2023, Month.JANUARY, 1, 0, 0);
      long unixTime = dateTime.atZone(ZoneId.systemDefault()).toEpochSecond();
    • Java 8 이상에서는 LocalDateTime과 ZoneId를 사용할 수 있음

  • 유닉스 타임스탬프를 날짜로 변환
    long unixTime = 1672531200; // 예시 타임스탬프
    Date date = new Date(unixTime * 1000);
    • 유닉스 타임스탬프를 Date 객체로 변환하거나 Calendar 인스턴스로 설정할 수 있음

      Calendar calendar = Calendar.getInstance();
      calendar.setTimeInMillis(unixTime * 1000);
    • Calendar 사용

      LocalDateTime dateTime = LocalDateTime.ofInstant(Instant.ofEpochSecond(unixTime), ZoneId.systemDefault());
    • Java 8 이상에서는 LocalDateTime과 Instant를 사용할 수 있음

profile
끝없이 성장하고자 하는 백엔드 개발자입니다.

0개의 댓글

관련 채용 정보