TimeZone的getDisplayName方法获取结果错误

liumangxingwc 2013-09-11 08:39:41
在Android中,调用TimeZone的getDisplayName(boolean daylightTime, int style, Locale locale)方法 。
不管daylightTime传true还是false,得到的结果都是Standard Time,一直获取不到DayLight Time。

但是调用getOffset得到的值是对的。

有的,UNIX系统的/usr/share/zoneinfo下的文件决定了getDisplayName的显示结果,我把能正常显示的设备下的文件cp到出问题的设备,结果获取的还是有问题,一直是Standard Time。

跪求解决办法,请各位大神不吝赐教。
...全文
1214 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
末日哥 2013-09-11
  • 打赏
  • 举报
回复
		TimeZone.setDefault(TimeZone.getTimeZone("America/New_York"));
		TimeZone defaultTimeZone = TimeZone.getDefault();
		String t1 = defaultTimeZone.getDisplayName(true, TimeZone.LONG,
				Locale.CHINA);
liumangxingwc 2013-09-11
  • 打赏
  • 举报
回复
Calendar now = Calendar.getInstance(); TimeZone tz = now.getTimeZone(); String t1 = tz.getDisplayName(true, TimeZone.LONG,Locale.getDefault()); String t2 = tz.getDisplayName(false, TimeZone.LONG,Locale.getDefault()); 结果t1和t2一样。
  • 打赏
  • 举报
回复
TimeZone timeZone = Calendar.getInstance().getTimeZone(); System.out.println(timeZone.getDisplayName(false, TimeZone.SHORT)); 这样呢

50,541

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧