灌木大叔

每一个不曾起舞的日子都是对以往生命的辜负!!

  :: 首页 :: 博问 :: 闪存 :: :: 联系 :: 订阅 订阅 :: 管理 ::

对于System.currentTimeMillis()没有影响。

对于Calendar.getInstance().getTimeInMillis()没有影响。

影响系统对long型的毫秒数的解释,如:Calendar.get(int field);Calendar.set(int field,int value);和

String.format("%1$TY%1$Tm%1$Td%1$TH:%1$TM:%1$TS",nTimeMillis);

通过Calendar.set(int field,int value)设置各个字段值,然后用Calendar.getTimeInMillis()方法转换时间会收到影响。

对SimpleDateFormat类的parse(String text,ParsePosition pos)无影响,它总是按UTC时间解释。

我的机子的JVM经常时区出错,每次用导入注册表的方法恢复,但是不长久,而且在C系统中很正常。后来在程序代码中加入设置默认时区的方法解决:

TimeZone tz = TimeZone.getTimeZone("ETC/GMT-8");

TimeZone.setDefault(tz);//将JVM的默认时区设为东部+8时间,也就是北京时间。

程序中的时区不再受影响。

posted on 2015-04-07 12:58  灌木大叔  阅读(1588)  评论(0编辑  收藏  举报