针对Java对世界不同时区timezone之间时间转换的处理,我们可以使用Java提供的java.time包来进行操作。下面是一些处理方法:
获取当前时间
我们可以使用LocalDateTime类获取当前时间,该类可以表示本地日期-时间并不包含时区信息。
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
public class Main {
public static void main(String[] args) {
LocalDateTime now = LocalDateTime.now();
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
String formatDateTime = now.format(formatter);
System.out.println("当前时间为: " + formatDateTime);
}
}
将本地时间转换成指定时区时间
我们可以使用ZonedDateTime类将本地时间转换成指定时区的时间
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.time.ZonedDateTime;
import java.time.format.DateTimeFormatter;
public class Main {
public static void main(String[] args) {
LocalDateTime now = LocalDateTime.now();
ZoneId id = ZoneId.of("America/New_York");
ZonedDateTime zonedDateTime = ZonedDateTime.of(now, id);
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
String formatDateTime = zonedDateTime.format(formatter);
System.out.println("当前纽约时间为: " + formatDateTime);
}
}
将指定时区时间转换成本地时间
我们可以使用ZonedDateTime类将指定时区时间转换成本地时间
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.time.ZonedDateTime;
import java.time.format.DateTimeFormatter;
public class Main {
public static void main(String[] args) {
LocalDateTime now = LocalDateTime.now();
ZoneId id = ZoneId.of("America/New_York");
ZonedDateTime zonedDateTime = ZonedDateTime.of(now, id);
ZonedDateTime local = zonedDateTime.withZoneSameInstant(ZoneId.systemDefault());
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
String formatDateTime = local.format(formatter);
System.out.println("本地时间为: " + formatDateTime);
}
}
以上就是Java对世界不同时区timezone之间时间转换的处理方法。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java对世界不同时区timezone之间时间转换的处理方法 - Python技术站