Java7&8 时区方面的处理

 

Java7:

 Calendar cd = Calendar.getInstance();  
 SimpleDateFormat sdf = new SimpleDateFormat("EEE d MMM yyyy HH:mm:ss 'GMT'", Locale.US);  
 sdf.setTimeZone(TimeZone.getTimeZone("GMT")); // 设置时区为GMT  
    String str = sdf.format(cd.getTime());  
    System.out.println(str); 

 

Java8:

Java 8不仅分离了日期和时间,也把时区分离出来了。现在有一系列单独的类如ZoneId来处理特定时区,ZoneDateTime类来表示某时区下的时间。这在Java 8以前都是 GregorianCalendar类来做的。

LocalDateTime.now(ZoneId.of("GMT")).
                format(DateTimeFormatter.ofPattern("MM/dd/yyyy hh:mm:ss a", Locale.US))
// Date and time with timezone in Java 8
ZoneId america = ZoneId.of("America/New_York");
LocalDateTime localtDateAndTime = LocalDateTime.now();
ZonedDateTime dateAndTimeInNewYork  = ZonedDateTime.of(localtDateAndTime, america );
System.out.println("Current date and time in a particular timezone : " + dateAndTimeInNewYork);
 
Output :
Current date and time in a particular timezone : 2014-01-14T16:33:33.373-05:00[America/New_York]

 

时区信息字段参考:https://www.cnblogs.com/softidea/p/8612287.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值