Computer >> Máy Tính >  >> Lập trình >> Java

Làm thế nào để lấy Thời gian tính bằng mili giây cho ngày và giờ đã cho trong Java?

java.text.SimpleDateFormat lớp được sử dụng để định dạng và phân tích cú pháp một chuỗi thành ngày tháng và ngày thành chuỗi.

  • Một trong các hàm tạo của lớp này chấp nhận giá trị Chuỗi đại diện cho định dạng ngày mong muốn và tạo đối tượng SimpleDateFormat.
  • Để phân tích cú pháp / chuyển đổi một chuỗi dưới dạng đối tượng Ngày Khởi tạo lớp này bằng cách chuyển chuỗi định dạng mong muốn.
  • Phân tích cú pháp chuỗi ngày bằng phương thức parse ().
  • Bạn có thể xem thời gian bằng cách sử dụng phương thức getTime ().

Ví dụ

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);
   }
}

Đầu ra

Epoch of the given date: 1251179445000

Bạn có thể đặt các giá trị ngày và giờ cho một đối tượng lịch bằng cách sử dụng set () phương pháp. GetTimeInMillis () của lớp này trả về thời gian kỷ nguyên của giá trị ngày tháng.

Ví dụ

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);      
   }
}

Đầu ra

1413003330758

Bạn có thể đặt giá trị ngày và giờ cho đối tượng ZonedDateTime bằng cách sử dụng of () phương pháp. ToEpochMilli () của lớp Instant trả về thời gian kỷ nguyên của giá trị ngày.

Ví dụ

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);
   }
}

Đầu ra

Milli Seconds: 1410411330000