首页 > 解决方案 > 如何获取 SAST 的 ZoneId?

问题描述

我需要从一个文件中解析一个时区,其中指定了如下区域:UTC、SAST 等。

问题:虽然ZoneId.of("UTC")效果很好,但我不能为 SAST 做同样的事情。

我明白了java.time.zone.ZoneRulesException: Unknown time-zone ID: SAST

问题:如何将“SAST”字符串转换为 Java 的ZoneId

我知道,每次收到时我都可以将“SAST”替换为“GMT+2”,但如果有更优雅的方式就更好了。

标签: javajava-8timezonejava-time

解决方案


根据oracle 文档,南非标准时间 (SAST) 是非洲/约翰内斯堡。所以你应该使用:

ZoneId.of("Africa/Johannesburg")

推荐阅读