当前位置:编程学习 > JAVA >>

TimeZone的getDisplayName方法获取结果错误

 在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。

   跪求解决办法,请各位大神不吝赐教。 timezone unix getDisplayName --------------------编程问答-------------------- TimeZone timeZone = Calendar.getInstance().getTimeZone(); 
System.out.println(timeZone.getDisplayName(false, TimeZone.SHORT)); 
这样呢 --------------------编程问答-------------------- 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.setDefault(TimeZone.getTimeZone("America/New_York"));
TimeZone defaultTimeZone = TimeZone.getDefault();
String t1 = defaultTimeZone.getDisplayName(true, TimeZone.LONG,
Locale.CHINA);
补充:Java ,  Java相关
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,