Computer >> 컴퓨터 >  >> 프로그램 작성 >> Java

Java에서 주어진 날짜와 시간에 대해 밀리초 단위로 시간을 얻는 방법은 무엇입니까?

<시간/>

java.text.SimpleDateFormat 클래스는 문자열을 날짜로, 날짜를 문자열로 형식화하고 구문 분석하는 데 사용됩니다.

  • 이 클래스의 생성자 중 하나는 원하는 날짜 형식을 나타내는 String 값을 수락하고 SimpleDateFormat 개체를 만듭니다.
  • 문자열을 Date 객체로 구문 분석/변환하려면 원하는 형식 문자열을 전달하여 이 클래스를 인스턴스화합니다.
  • parse() 메서드를 사용하여 날짜 문자열을 구문 분석합니다.
  • getTime() 메소드를 사용하여 Epoch 시간을 얻을 수 있습니다.

예시

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class Sample {
   public static void main(String args[]) throws ParseException {  
      //Instantiating the SimpleDateFormat class
      SimpleDateFormat dateformatter = new SimpleDateFormat("dd-MM-yyyy HH:mm:ss");      
      //Parsing the given String to Date object
      String str = "25-08-2009 11:20:45";
      Date date = dateformatter.parse(str);  
      long msec = date.getTime();
      System.out.println("Epoch of the given date: "+msec);
   }
}

출력

Epoch of the given date: 1251179445000

set() 을 사용하여 달력 개체에 날짜 및 시간 값을 설정할 수 있습니다. 방법. 이 클래스의 getTimeInMillis()는 날짜 값의 epoch 시간을 반환합니다.

예시

import java.util.Calendar;
public class Sample {
   public static void main(String args[]) {  
      Calendar cal = Calendar.getInstance();
      cal.set(2014, 9, 11, 10, 25, 30);
      long msec = cal.getTimeInMillis();
      System.out.print(msec);      
   }
}

출력

1413003330758

of() 를 사용하여 날짜 및 시간 값을 ZonedDateTime 객체로 설정할 수 있습니다. 방법. Instant 클래스의 toEpochMilli()는 날짜 값의 epoch 시간을 반환합니다.

예시

import java.time.Instant;
import java.time.ZoneId;
import java.time.ZonedDateTime;
public class Sample {
   public static void main(String args[]){  
      //Creating the ZonedDateTime object
      ZoneId id = ZoneId.of("Asia/Kolkata");
      ZonedDateTime obj = ZonedDateTime.of(2014, 9, 11, 10, 25, 30, 22, id);
      Instant instant = obj.toInstant();      
      long msec = instant.toEpochMilli();
      System.out.println("Milli Seconds: "+msec);
   }
}

출력

Milli Seconds: 1410411330000