我正在使用TimeZone
课程以SHORT
格式获取时区,如"PST", "EST"
等,使用TimeZone.getDefault().getDisplayName(false, TimeZone.SHORT, Locale.getDefault())
对于某些设备,这段代码返回"PST"
等,但某些设备返回"GMT+007"
值。任何人都知道我可以做出哪些改变以使其与"PST"
格式保持一致。
答案 0 :(得分:0)
短名称是时区数据库的一部分。似乎某些设备正在发送时区数据库,这些数据库不包含此信息,或者其库忽略它。
为了使这一点保持一致,我将包括一个从长名称映射到短名称的映射。但是你必须自己维护它,并且你还需要为每个时区获得长名称(如“US / Hawaii”),我不知道你是否可以使用它,这取决于用例。
另请注意,短时区名称不明确,例如有许多时区称为EST。