我需要以编程方式确定世界各地站点的时区显示字符串(即加利福尼亚的 PST/PDT)。我的问题是德国;无论我如何转动它,我都无法让它以德语(MESZ)显示显示名称。
以下是我尝试过的一些尝试:
TimeZone tz = TimeZone.getTimeZone("MET");
Calendar calendar = Calendar.getInstance(tz);
Date date = new Date();
date.setTime(calendar.getTimeInMillis());
String displayName = tz.getDisplayName(tz.inDaylightTime(date), TimeZone.SHORT, Locale.GERMANY);
为此,我将 displayName 设为 MEST(我需要的 MESZ 的英文版)。
如果我使用“Europe/Berlin”而不是“MET”,我会得到 CEST,甚至更糟......我也尝试在 getDisplayName 方法中使用语言环境参数,不传递它,传递 GERMANY,传递 GERMAN,但是结果不会改变。
我究竟做错了什么?
谢谢,尤塔姆。