博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
解决java获取系统时间差8个小时 专题
阅读量:5889 次
发布时间:2019-06-19

本文共 5607 字,大约阅读时间需要 18 分钟。

在WIN7下发现一些Java的程序获取系统时间比真实时间差了8个小时,怀疑是Java程序沿用了低版本的JDK,获取时间时取的GSM 0时区,而中国是GSM +8,所以查了8个小时,解决办法如下:

修改如下:

Date d = new Date();  SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd  kk:mm:ss ");  sdf.setTimeZone(TimeZone.getTimeZone("Asia/Shanghai"));  System.out.println(sdf.format(d));
Calendar now = Calendar.getInstance();

         // 获取中国北京时区       

         TimeZone tz = TimeZone.getTimeZone("CCT");//写法1,简写
         tz=TimeZone.getTimeZone("Asia/Shanghai");//写法2,a full name such as"America/Los_Angeles"
         tz=TimeZone.getTimeZone("GMT+08:00");//写法3,custom ID such as "GMT-8:00"

now.setTimeZone(TimeZone.getTimeZone("Asia/Shanghai"));//important
或:     now.setTimeZone();    System.out.println(now.get(Calendar.HOUR_OF_DAY));    System.out.println(now.get(Calendar.MINUTE));    System.out.println(now.get(Calendar.SECOND));

这样就可以了。

关键就是设置TimeZone: TimeZone.getTimeZone("Asia/Shanghai")

 

http://wmljava.iteye.com/blog/1236906

API:

 

public static  getTimeZone( ID)

 

Gets the
TimeZone for the given ID.

 

Parameters:
ID - the ID for a
TimeZone, either an abbreviation such as "PST", a full name such as "America/Los_Angeles", or a custom ID such as "GMT-8:00". Note that the support of abbreviations is for JDK 1.1.x compatibility only and full names should be used.
Returns:
the specified
TimeZone, or the GMT zone if the given ID cannot be understood.

时区简写对照表:

 

 

标准时间代码

与GMT的偏移量

描述

NZDT

+13:00

新西兰夏令时

IDLE

+12:00

国际日期变更线,东边

NZST

+12:00

新西兰标准时间

NZT

+12:00

新西兰时间

AESST

+11:00

澳大利亚东部夏时制

CST(ACSST)

+10:30

中澳大利亚标准时间

CADT

+10:30

中澳大利亚夏时制

SADT

+10:30

南澳大利亚夏时制

EST(EAST)

+10:00

东澳大利亚标准时间

GST

+10:00

关岛标准时间

LIGT

+10:00

澳大利亚墨尔本时间

CAST

+9:30

中澳大利亚标准时间

SAT(SAST)

+9:30

南澳大利亚标准时间

WDT(AWSST)

+9:00

澳大利亚西部标准夏令时

JST

+9:00

日本标准时间,(USSR Zone 8)

KST

+9:00

韩国标准时间

MT

+8:30

毛里求斯时间

WST(AWST)

+8:00

澳大利亚西部标准时间

CCT

+8:00

中国沿海时间(北京时间)

JT

+7:30

爪哇时间

IT

+3:30

伊朗时间

BT

+3:00

巴格达时间

EETDST

+3:00

东欧夏时制

CETDST

+2:00

中欧夏时制

EET

+2:00

东欧,(USSR Zone 1)

FWT

+2:00

法国冬时制

IST

+2:00

以色列标准时间

MEST

+2:00

中欧夏时制

METDST

+2:00

中欧白昼时间

SST

+2:00

瑞典夏时制

BST

+1:00

英国夏时制

CET

+1:00

中欧时间

DNT

+1:00

Dansk Normal Tid

FST

+1:00

法国夏时制

MET

+1:00

中欧时间

MEWT

+1:00

中欧冬时制

MEZ

+1:00

中欧时区

NOR

+1:00

挪威标准时间

SET

+1:00

Seychelles Time

SWT

+1:00

瑞典冬时制

WETDST

+1:00

西欧光照利用时间(夏时制)

GMT

0:00

格林威治标准时间

WET

0:00

西欧

WAT

-1:00

西非时间

NDT

-2:30

纽芬兰(新大陆)白昼时间

ADT

-03:00

大西洋白昼时间

NFT

-3:30

纽芬兰(新大陆)标准时间

NST

-3:30

纽芬兰(新大陆)标准时间

AST

-4:00

大西洋标准时间(加拿大)

EDT

-4:00

(美国)东部夏令时

CDT

-5:00

(美国)中部夏令时

EST

-5:00

(美国)东部标准时间

CST

-6:00

(美国)中部标准时间

MDT

-6:00

(美国)山地夏令时

MST

-7:00

(美国)山地标准时间

PDT

-7:00

(美国)太平洋夏令时

PST

-8:00

(美国)太平洋标准时间

YDT

-8:00

Yukon夏令时

HDT

-9:00

夏威仪/阿拉斯加白昼时间

YST

-9:00

Yukon标准时

AHST

-10:00

夏威仪-阿拉斯加标准时间

CAT

-10:00

中阿拉斯加时间

NT

-11:00

州时间(Nome Time)

IDLW

-12:00

国际日期变更线,西边

 

 

timeZone可使用的参数:

America/Belize                      CST          中央标准时间America/Cancun                      CST          中央标准时间America/Chicago                     CST          中央标准时间America/Costa_Rica                  CST          中央标准时间America/El_Salvador                 CST          中央标准时间America/Guatemala                   CST          中央标准时间America/Indiana/Knox                CST          中央标准时间America/Indiana/Tell_City           CST          中央标准时间America/Knox_IN                     CST          中央标准时间America/Managua                     CST          中央标准时间America/Menominee                   CST          中央标准时间America/Merida                      CST          中央标准时间America/Mexico_City                 CST          中央标准时间America/Monterrey                   CST          中央标准时间America/North_Dakota/Center         CST          中央标准时间America/North_Dakota/New_Salem      CST          中央标准时间America/Rainy_River                 CST          中央标准时间America/Rankin_Inlet                CST          中央标准时间America/Regina                      CST          中央标准时间America/Swift_Current               CST          中央标准时间America/Tegucigalpa                 CST          中央标准时间America/Winnipeg                    CST          中央标准时间CST                                 CST          中央标准时间CST6CDT                             CST          中央标准时间Canada/Central                      CST          中央标准时间Canada/East-Saskatchewan            CST          中央标准时间Canada/Saskatchewan                 CST          中央标准时间Mexico/General                      CST          中央标准时间SystemV/CST6                        CST          中央标准时间SystemV/CST6CDT                     CST          中央标准时间US/Central                          CST          中央标准时间US/Indiana-Starke                   CST          中央标准时间America/Havana                      CST          Cuba Standard TimeCuba                                CST          Cuba Standard TimeAsia/Chongqing                      CST          中国标准时间Asia/Chungking                      CST          中国标准时间Asia/Harbin                         CST          中国标准时间Asia/Kashgar                        CST          中国标准时间Asia/Macao                          CST          中国标准时间Asia/Macau                          CST          中国标准时间Asia/Shanghai                       CST          中国标准时间Asia/Taipei                         CST          中国标准时间Asia/Urumqi                         CST          中国标准时间CTT                                 CST          中国标准时间PRC                                 CST          中国标准时间ACT                                 CST          中央标准时间(北领地)Australia/Adelaide                  CST          中央标准时间(南澳大利亚)Australia/Broken_Hill               CST          中央标准时间(南澳大利亚/新南威尔斯)Australia/Darwin                    CST          中央标准时间(北领地)Australia/North                     CST          中央标准时间(北领地)Australia/South                     CST          中央标准时间(南澳大利亚)Australia/Yancowinna                CST          中央标准时间(南澳大利亚/新南威尔斯)

 

 

转载地址:http://ptysx.baihongyu.com/

你可能感兴趣的文章
使用JavaMail完成邮件的编写
查看>>
洛谷P1576 最小花费
查看>>
封装了一个类,可生成验证码,缩略图,及水印图
查看>>
文件服务器 之 Debian下pureftpd的安装心得
查看>>
第一阶段项目总结
查看>>
Java集合详解
查看>>
myeclilpse打开文件所在位置的图标消失后的找回方法
查看>>
Android利用文本分割拼接开发一个花藤文字生成
查看>>
哈夫曼树的实现
查看>>
12-18Windows窗体应用小程序之记事本(1)
查看>>
毕业论文一次性修改所有字母和数字的字体
查看>>
结构体:HASH表模板
查看>>
[转]理解Linux文件系统之inode
查看>>
在i3 Cpu上允许64位系统
查看>>
视频编解码学习之五:差错控制及传输
查看>>
Postman教程
查看>>
python模块--os模块
查看>>
HSSFRow获取单元格方法与区别
查看>>
洛谷 1365 WJMZBMR打osu! / Easy
查看>>
删除UINavigationItem上的BarButtonItem
查看>>