我当前遇到以下问题:我正在运行这个命令
TimeZone.getDefault();
而我的手机(Android 7.0的Galaxy S6(被配置为使用阿拉伯语(准确地说是العربية
(的系统语言。这个调用的输出是:GMT+٠٢:٠٠
,而不是我所期望的GMT+02:00
我注意到这个问题只发生在三星设备上(至少从我在日志中看到的错误来看(。
有没有办法确保我得到的时区是GMT+02:00
格式,而不管手机的区域设置如何?
我找到的解决方案:
final static String am = "GMT-%02d:%02d";
final static String pm = "GMT+%02d:%02d";
final String timezone = String.format(Locale.ENGLISH, offset < 0 ? am : pm, hours, minutes);