将ZoneDateTime转换为java.util.Date
如何在不更改时区的情况下将ZonedDateTime转换为java.util.Date 在我下面的方法中,当我调用将ZoneDateTime转换为java.util.Date,java,date,java-8,timezone,Java,Date,Java 8,Timezone,如何在不更改时区的情况下将ZonedDateTime转换为java.util.Date 在我下面的方法中,当我调用Date.from(datetime.toInstant())时,在我的例子SGT中,它将其转换为本地时区 public static void printDate(ZonedDateTime datetime) { System.out.println("---> " + datetime.format(DateTimeFormatter.ofPattern(API_
Date.from(datetime.toInstant())
时,在我的例子SGT中,它将其转换为本地时区
public static void printDate(ZonedDateTime datetime) {
System.out.println("---> " + datetime.format(DateTimeFormatter.ofPattern(API_TIME_STAMP_PATTERN)));
System.out.println(Date.from(datetime.toInstant()));
System.out.println("\n");
}
输出
您可以自己添加偏移量毫秒。请参见使用
java.util.Date
的示例:
long offsetMillis = ZoneOffset.from(dateTime).getTotalSeconds() * 1000;
long isoMillis = dateTime.toInstant().toEpochMilli();
Date date = new Date(isoMillis + offsetMillis);
long offsetMillis = ZoneOffset.from(dateTime).getTotalSeconds() * 1000;
long isoMillis = dateTime.toInstant().toEpochMilli();
Date date = new Date(isoMillis + offsetMillis);