zoukankan      html  css  js  c++  java
  • 秒数怎么转时:分:秒

      先看代码,我这里只给出main方法直接跑起来看:

    public static void main(String[] args)
        {
            long totalDuration = 62907;
            String audioDuration = null;
            if (totalDuration >= 0)
            {
                
                SimpleDateFormat formatter = new SimpleDateFormat("HH:mm:ss"); // 24小时制
                
                // 1、当前系统默认时区,按时分秒格式化
                audioDuration = formatter.format(totalDuration * 1000);
                System.out.printf("当前时区: %s
    ", audioDuration);
                
                System.out.printf("当前时区与格林尼治相差%s个小时
    ", TimeZone.getDefault().getRawOffset() / (3600 * 1000));
                // 2、当前系统默认时区转换为GMT时区,按时分秒格式化
                audioDuration = formatter.format(totalDuration * 1000 - TimeZone.getDefault().getRawOffset());
                System.out.printf("格林尼治时区: %s
    ", audioDuration);
                
                formatter = new SimpleDateFormat("hh:mm:ss"); // 12小时制
                // 当前系统默认时区转换为GMT时区,按时分秒格式化
                audioDuration = formatter.format(totalDuration * 1000 - TimeZone.getDefault().getRawOffset());
                System.out.printf("格林尼治时区: %s
    ", audioDuration);
            }
            
        }

      运行结果:

    当前时区: 01:28:27
    当前时区与格林尼治相差8个小时
    格林尼治时区: 17:28:27
    格林尼治时区: 05:28:27

      可以看到,当前是中国的北京时区,62907秒转换后是凌晨1点28分27秒,而格林尼治时间晚我们8个小时,所以他们当前才下午5点。

      我们这里并不是转换日期,而是把累计起来的秒数转换为时分秒格式,直接计算很明显62907是17小时28分27秒 (直接拿62907去除3600),所以我们不能按当前时区转,也不能按12小时制转,只能按GMT时区的24小时制转。

  • 相关阅读:
    ZooKeeper-3.3.4集群安装配置
    zookeeper原理(转)
    flume 转
    Flume NG 简介及配置实战
    Flume NG 配置详解
    '增量赋值(augmented assignment)', 多么痛的领悟!
    用matplotlib制作的比较满意的蜡烛图
    Spyder code editor里的小秘密: 右侧高亮提示
    pywinauto: 导入时遇到 "TypeError: LoadLibrary() argument 1 must be string, not unicode"
    爬取新浪财经个股的历史财报摘要
  • 原文地址:https://www.cnblogs.com/wuxun1997/p/7162692.html
Copyright © 2011-2022 走看看