获取本地时间:

Java代码  
  1. String time1 = new SimpleDateFormat("hh:mm:ss").format(new Date());

获取时区“GMT+8”的时间:

Java代码  
  1. String time2 = cal.get(Calendar.HOUR_OF_DAY) + ":" + Calendar.MINUTE + ":" + Calendar.SECOND;

如果“GMT+8”就是北京时间,为什么time1和time2又不相等呢?

下面附上测试代码和测试结果:

Java代码  
  1. Calendar cal = new GregorianCalendar(TimeZone.getTimeZone("GMT+8"));
  2. String time1 = new SimpleDateFormat("hh:mm:ss").format(new Date());
  3. String time2 = cal.get(Calendar.HOUR_OF_DAY) + ":" + Calendar.MINUTE + ":" + Calendar.SECOND;
  4. System.out.println("time1=" + time1);
  5. System.out.println("time2=" + time2);
Java代码  
  1. time1=10:54:55
  2. time2=10:12:13

今天查明原因了,上面代码第三行有错误,应该是:

Java代码  
  1. String time2 = cal.get(Calendar.HOUR_OF_DAY) + ":" + cal.get(Calendar.MINUTE) + ":" + cal.get(Calendar.SECOND);

另外,要求已知时区的时间,应该像下面这样:

Java代码  
  1. public static String getLocalDatetimeString(String local) {
  2. Calendar cal = new GregorianCalendar(TimeZone.getTimeZone(local));
  3. cal.setTimeInMillis(Calendar.getInstance().getTimeInMillis());
  4. String date = cal.get(Calendar.YEAR) + "-" + (cal.get(Calendar.MONTH) + 1) + "-" + cal.get(Calendar.DAY_OF_MONTH);
  5. String time = cal.get(Calendar.HOUR_OF_DAY) + ":" + cal.get(Calendar.MINUTE) + ":" + cal.get(Calendar.SECOND);
  6. return date + " " + time;
  7. }

这样调用:

Java代码  
  1. getLocalDatetimeString("GMT+8");

本地时间(北京时间)和“GMT+8”时区时间的区别?相关推荐

  1. 带时区时间日期 ZonedDateTime

    带时区时间日期 ZonedDateTime 1. 简介 ZonedDateTime表示带时区的日期时间,如2007-12-03T10:15:30+01:00 Europe/Paris. 参考官方文档描 ...

  2. UTC时间 GMT时间 本地时间 北京时间 时区 夏令时简要说明

    1.UTC时间 与 GMT时间 整个地球分为二十四时区,每个时区都有自己的本地时间.为了统一起见,使用一个统一的时间,称为通用协调时(UTC, Universal Time Coordinated). ...

  3. UTC时间 GMT时间 本地时间 北京时间 时区 夏令时简要说明

    1.UTC时间 与 GMT时间 整个地球分为二十四时区,每个时区都有自己的本地时间.为了统一起见,使用一个统一的时间,称为通用协调时(UTC, Universal Time Coordinated). ...

  4. JS将GMT时间转化为当前时区时间

    如果我们从后台拿到一个时间,但是这个时间是GMT格林尼治时间,我们想要把它转化成为用户当前时区的时间,并且用户不仅限于中国,也就是还有其他时区的情况下,利用JS即可实现 let local = new ...

  5. Java黑皮书课后题第2章:*2.8(当前时间)程序清单2-7给出了显示当前格林尼治时间的程序。修改这个程序,提示用户输入相对于GMT的时区偏移量,显示在这个特定时区的时间

    *2.8(当前时间)程序清单2-7给出了显示当前格林尼治时间的程序.修改这个程序,提示用户输入相对于GMT的时区偏移量,显示在这个特定时区的时间 题目 题目描述 运行示例 程序清单2-7(非本题代码) ...

  6. 将本地时间转换成 UTC 时间,0时区时间

    // 将时间戳转换成日期格式: function timestampToTime(timestamp) { var date = new Date(timestamp);//时间戳为10位需*1000 ...

  7. Java北京飞到到纽约的时区时间

    SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");Calendar cal=Calendar.get ...

  8. C#指定时区时间转为本地时间

    这是一个从日本时间转换为本地时间的例子,因为日本的时间为UTC+9,所以我这里减去9小时,取得其相对的UTC时间,然后获取本地时区信息,把本地时区相差的时间加上即可. public static st ...

  9. php时间戳转utc时间格式,PHP转换UNIX时间戳 UTC时间(TZ格式) 标准时间的方法 UNIX UTC GMT时间、本地时间互转...

    在PHP编程中经常会遇到各种不同格式的时间 比如: unix时间戳:1547740800 UTC时间:2019-1-18T00:00:00Z 标准时间:2019-1-18 00:00:00 以上这三个 ...

最新文章

  1. 立刻停止使用AUFS,开启Overlay!
  2. linux下监控用户的操作记录
  3. 代码: 0x80131500_微软应用商店错误代码“0x80131500”怎么修复?
  4. windows环境下,如何在Pycharm下安装TensorFlow环境
  5. 速打微补丁!这个越权文件读取漏洞影响 Windows OS
  6. Exchange server 2010系列教程之十一 整合AD RMS与exchange 2010
  7. AE插件:TV Distortion Bundle mac(画面像素破损信号干扰失真插件)支持ae2021(2.6.0)
  8. mysql 中 字典表设计_数据库怎么设计字典表
  9. 山东标梵讲解浅谈移动端开发技术
  10. php eclipse aptana,Eclipse安装Aptana插件(注意对应版本问题)
  11. Deepest Root(dfs深度优先遍历)
  12. 【BZOJ30472125】Freda的传呼机
  13. WPF解决方案和项目结构
  14. python使用Canny算法和HoughCiecle算法实现圆的检测与定位
  15. antdv table 的表格列配置描述 columns
  16. dump和coredump
  17. 计算机科学与技术专业描述是什么,计算机科学与技术专业属于什么门类 计算机科学与技术专业介绍...
  18. 前后端分离项目-易买网
  19. .NET版支付宝商户会员卡接入
  20. fitnesse java_Fitnesse测试系列--安装及环境配置

热门文章

  1. 最新版的docker安装
  2. html哪个标记表示表格,html标记中哪个标记表示表格
  3. 解决:mysql报错ERROR 1049 (42000): Unknown database ‘数据库‘
  4. PDF复制后乱码问题,怎么解决?
  5. 汽车汽配行业供应链协同管理平台一体化管理,SCM供应链提升企业竞争力
  6. c++基本语法入门小游戏
  7. 唯样商城:扩展用于汽车以太网的 ESD 保护解决方案产品组合
  8. 使用线程池优化多线程编程
  9. Excel VBA-代码汇总
  10. Vue-cli搭建SPA项目