有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

字符串Java将日历转换为EST时区?

我有以下Java变量:

@JsonProperty
@Temporal(TemporalType.TIMESTAMP)
@Column(name = "start")
private Calendar start;

格式:

"yyyy-MM-dd HH:mm:ss"

我以UTC接收此字段,但希望将此字段转换为EST时间。我怎样才能做到

我正努力做到以下几点:

private Calendar convertToEST(Calendar calendar) {

        LocalDateTime ldt = LocalDateTime.parse(convertCalendarToString(calendar), DateTimeFormatter.ofPattern(DATE_FORMAT));
        
        ZonedDateTime estZonedDateTime = ldt.atZone(ZoneId.of("EST"));
        
        ZonedDateTime convertedZonedDateTime = estZonedDateTime.withZoneSameInstant(ZoneId.of("EST"));

        Date convertedDate = Date.from(convertedZonedDateTime.toInstant());

        return toCalendar(convertedDate);
    }

    public static Calendar toCalendar(Date date){
        Calendar cal = Calendar.getInstance();
        cal.setTime(date);
        return cal;
    }

    private static String convertCalendarToString(Calendar calendar) {
        return dateFormat.format(calendar.getTime());
    }

共 (0) 个答案