我寫了一個Android應用程序,需要手機當前所在的短時區名稱。獲取三個字母的短時區名稱(而不是四個字母)?
我用下面的代碼:
String timeZone = Calendar.getInstance().getTimeZone().getDisplayName(false, TimeZone.SHORT);
當在芝加哥運行,這將返回 「CST」。在紐約,「EST」。在Strasbourg, France中,它返回「HNEC」(Heure Normale de l'Europe Centrale in French)。
這個位置的時區被一些人稱爲「中歐時間」(見維基百科的Time zones of Europe)。
我通過timeZone
關閉第三方系統,非常堅持獲得「CET」(而不是「HNEC」)。是否有可以依賴的API調用返回三個字母(以及我認爲的「更現代」)的短時區名稱?
由於我的代碼在越來越多的位置運行,我猜這個問題也會發生在其他地方。
我真的希望避免維護某種三字母到四字母短時區名稱的地圖。
如何在android中獲取移動時區的縮寫?有什麼解決辦法嗎? – 2015-03-31 06:39:26
請檢查我的答案。 – 2017-04-02 18:42:41