Tôi có nguồn dữ liệu với các đối tượng DateTime được lưu trữ trong thời gian joda. Tôi cần phải chuyển đổi chúng thành các đối tượng java ZonedDateTime, giữ nguyên múi giờ ban đầu.Cách chuyển đổi từ org.joda.time.DateTime sang java.time.ZonedDateTime
Không đủ để giữ khoảng trống vì một số đối tượng DateTime đại diện cho các tác vụ lặp lại hàng ngày và các tác vụ này phải xảy ra tại một thời điểm cụ thể trong một múi giờ cụ thể cho mỗi ngày. Do đó, chúng phải tuân theo các chuyển đổi TimeZone được chỉ định ví dụ như mùa hè và mùa đông. Tôi không thể cho biết cách sử dụng cuối cùng của các đối tượng DateTime, vì vậy tôi cần giữ thông tin Múi giờ trên tất cả các đối tượng để an toàn.
Cách chuyển đổi từ org.joda.time.DateTime thành java.time.ZonedDateTime?
Will tất cả
ord.joda.time.DateTimeZone.getId()
bản đồ để id của sẵn trong
java.time.ZoneId
Có một tập hợp con cụ thể không có tập hợp con này hay không? Có lẽ một số vùng tương thích POSIX cũ hơn? Tôi hy vọng tất cả các khu vực kiểu "Khu vực/Địa phương" hiện đại sẽ có sẵn ở cả hai. –
Sự khác biệt duy nhất là ROC, được thay thế bằng ROK. Các vùng EST, HST và MST có thể được truy cập bằng cách sử dụng 'ZoneId.SHORT_IDS'. Nếu không, bất kỳ sự khác biệt nào chỉ là từ phiên bản sau của cơ sở dữ liệu múi giờ trong Joda-Time. – JodaStephen
@JodaStephen Thay cho 'ZoneId.of (dt.getZone().getID(), ZoneId.SHORT_IDS)) 'will' dt.toTimeZone(). toZoneId() 'có hoạt động không? nó dường như để lại gritty nitty để JodaTime và Java tương ứng. – NomeN