如何使用SimpleDateFormat解析“US/Mountain”,“US/Pacific”等等的时区?使用SimpleDateFormat.java解析时区
下面的代码抛出ParseException
String pattern = "MM/dd/yyyyy hh:mm a zzzz";
String value = "7/18/2016 05:00 PM US/Mountain";
new SimpleDateFormat(pattern).parse(value);
根据http://docs.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html#timezone
我应该能够使用“Z”(或多个z的)得到一个时区出来的文字,但我不确定SimpleDateFormat.java正在查看哪些字符串或模式列表。
据我所知,我可以使用不同的Java库,甚至可以自己做一些有限的时区和字符串(ugh)。
但我的问题是真的关于正确使用或SimpleDateFormat要做到这一点?
它看起来像TimeZone.getTimeZone(“US /山”)返回“山地标准时间“有没有办法使用SimpleDateFormat解析”US/Mountain“? – Ervin
@Ervin不太确定。但通过粗略阅读源代码。看来只有在区域标识未知的情况下才有可能。但是,代码本身确实使用显示名称作为格式的值。所以,我想你应该坚持显示名称。 –