在 Android 上,我需要解析包含短时区名称的时间戳字符串,例如2013-08-16 17:36 PDT
. 我使用的是正则表达式而不是 SimpleDateFormat,因为输入字符串可以有可选的秒和毫秒。
除了时区解析外,一切正常:我不知道如何查找时区。 TimeZone.getTimeZone()
明确不支持像“PDT”这样的短时区名称。但是我知道系统中有短名称,因为 SimpleDateFormat 可以识别像上面这样的字符串(格式为yyyy-MM-dd HH:mm Z
)。
我认识到存在一些模棱两可的时区名称(例如“CST”),因此使用短名称通常并不可靠。尽管如此,我需要解析这些时间戳。
有没有办法从 Android 上的短时区名称中查找 TimeZone 对象(或 GMT 偏移量)?