MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Phân tích cú pháp chuỗi ngày ISO8601 thành ngày tháng với Múi giờ UTC

Nếu bạn đang sử dụng Java 7 hoặc phiên bản cũ hơn, bạn có thể tham khảo bài đăng này.

Nếu bạn đang sử dụng Java 8, bạn có thể làm:

    DateTimeFormatter timeFormatter = DateTimeFormatter.ISO_DATE_TIME;
    TemporalAccessor accessor = timeFormatter.parse("2015-10-27T16:22:27.605-07:00");

    Date date = Date.from(Instant.from(accessor));
    System.out.println(date);

Cập nhật

Như được chỉ ra bởi @BasilBourque trong nhận xét, TemporalAccessor là giao diện cấp khung java và không được khuyến khích sử dụng trong mã ứng dụng và bạn nên sử dụng các lớp cụ thể hơn là giao diện.

Giao diện này là giao diện cấp khung không nên được sử dụng rộng rãi trong mã ứng dụng. Thay vào đó, các ứng dụng nên tạo và chuyển xung quanh các phiên bản của các loại cụ thể, chẳng hạn như LocalDate. Có nhiều lý do giải thích cho điều này, một phần là do việc triển khai giao diện này có thể nằm trong các hệ thống lịch khác với ISO. Xem ChronoLocalDate để có cuộc thảo luận đầy đủ hơn về các vấn đề.

Có một số lớp cụ thể có sẵn để sử dụng, như LocalDate, LocalDateTime, OffsetDateTime, ZonedDateTime và v.v.

DateTimeFormatter timeFormatter = DateTimeFormatter.ISO_DATE_TIME;

OffsetDateTime offsetDateTime = OffsetDateTime.parse("2015-10-27T16:22:27.605-07:00", timeFormatter);

Date date = Date.from(Instant.from(offsetDateTime));
System.out.println(date);


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB bật với Docker không kết nối được với máy chủ [localhost:27017] trong lần kết nối đầu tiên

  2. Giám sát các phiên bản MongoDB bằng Dịch vụ Giám sát MongoDB (MMS)

  3. Sao chép / sao chép bộ sưu tập trong MongoDB

  4. Làm cách nào để thiết lập MongoDB trên máy chủ Node.js bằng node-mongodb-native trong môi trường EC2?

  5. Từ điển Python:loại bỏ ký tự u '