【发布时间】:2015-05-17 19:08:26
【问题描述】:
下面的 SimpleDateFormat 解析了我尝试过但似乎无法识别 EDT 的所有其他 TimeZone?
private static final SimpleDateFormat currentDateFormat =
new SimpleDateFormat("EEE, d MMM yyy h:mm a z");
ParseException:无法解析的日期:“Sun, 15 Mar 2015 12:50 pm EDT”(偏移量 26)
我暂时从日期字符串中截断了时区,以便正确解析。
【问题讨论】:
-
TimeZone.getTimeZone("America/New_York").getDisplayName(true, TimeZone.SHORT)产生了什么?是“EDT”还是别的什么?还要确保使用英语作为默认语言环境。如果测试结果不是“EDT”,那么问题的原因可能是您的 Android 版本管理了一组不同的时区名称和缩写。 -
@Ozzy 你解决了吗?
-
@JaredBurrows 是的,有解决方法。从格式中删除“z”并使用函数计算 3 个字母时区的时区差异。稍后我不太忙时会发布答案。
标签: java android parsing timezone simpledateformat