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相关