Java8 に基づいて、現在指定されているタイムゾーンの時刻を取得します。

Java8に基づいた実装:

String zone = "Asia/Shanghai";
ZoneId zoneId = ZoneId.of(zone);//获取时区Id
DateTimeFormatter formatter = DateTimeFormatter.ISO_LOCAL_DATE.withZone(zoneId);//以1970-01-01的形式格式化时间
String formatStr = formatter.format(ZonedDateTime.now());//格式化当前的时间为字符串

サポートされているタイムゾーンのリスト:

TreeSet<String> sortedZones = new TreeSet<>(ZoneId.getAvailableZoneIds());
System.out.println("Number of zones: " + sortedZones.size());
System.out.println("---------------");
for (String zone : sortedZones) {
    System.out.println(zone);
}

DateTimeFormatter でサポートされているプリセット形式:

https://docs.oracle.com/javase/8/docs/api/java/time/format/DateTimeFormatter.html

 

おすすめ

転載: blog.csdn.net/bbandxq521/article/details/103535168