Java 如何将时区字符串“Europe/Amsterdam”转换为“CET-1CEST,M3.5.0/2,M10.5.0/3”?

Java 如何将时区字符串“Europe/Amsterdam”转换为“CET-1CEST,M3.5.0/2,M10.5.0/3”?,java,android,timezone,posix,Java,Android,Timezone,Posix,在Android设备上,我需要转换时区Id Europe/Amsterdam 到 可能吗 它是标准posix吗?如果你那样做,你就要扔掉了。对于您的场景来说,这可能没问题,但您应该知道它们并不等同。如果将来有任何改变,你也会把自己锁在外面。另请参阅中有关POSIX样式时区的部分。@MattJohnson感谢您的建议。我需要设置杨桃2板的时区,它接受posix格式。那么,您确认没有自动转换实用程序来将tz id转换为Java中的posix吗?我无法确认这一点,因此给出了注释而不是答案。从技术上讲

在Android设备上,我需要转换时区Id

Europe/Amsterdam

可能吗


它是标准posix吗?

如果你那样做,你就要扔掉了。对于您的场景来说,这可能没问题,但您应该知道它们并不等同。如果将来有任何改变,你也会把自己锁在外面。另请参阅中有关POSIX样式时区的部分。@MattJohnson感谢您的建议。我需要设置杨桃2板的时区,它接受posix格式。那么,您确认没有自动转换实用程序来将tz id转换为Java中的posix吗?我无法确认这一点,因此给出了注释而不是答案。从技术上讲,不可能转换整个时区,但可以将当前规则投影为POSIX格式,只要只考虑一个DST周期。一些地区,如非洲/开罗和非洲/卡萨布兰卡,一年内有两次DST,POSIX无法代表这一点。我相信有人可以在这里给出一个答案,说明如何使用Java从IANA区域投影单个POSIX规则。甚至可能有一个内置的方法——我只是不太熟悉,无法提供它。一定要想一想你将如何保持更新。您可能希望订阅上的公告列表,以了解最新消息。虽然晚会有点晚,但
CET-1CEST,M3.5.0/2,M10.5.0/3