A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 欧德林 中级黑马   /  2012-9-30 11:42  /  1394 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

如果定义一个 long mtime= 3600,000;
如何转成时间 格式的呢?  例:144小时45分33秒

完全忘记了。

评分

参与人数 1技术分 +1 收起 理由
刘芮铭 + 1 国庆快乐

查看全部评分

4 个回复

倒序浏览
谭立文 发表于 2012-9-30 11:48
package com.wenfengkeji.heima;

import java.text.SimpleDateFormat;

我电脑上显示答案是: 08时06分00秒

和我预期的 3600,000 应该是 00时06分00秒  有点差距
回复 使用道具 举报
日期对象和毫秒值的转换
毫秒值——>日期对象
    1.通过Date的构造函数
    Date d2=new Date(毫秒值);将该毫秒值转化为时间对象
    2.还可以通过setTime(long time);设置
日期对象——>毫秒值
    1.getTime();
回复 使用道具 举报
本帖最后由 谭立文 于 2012-9-30 12:29 编辑
欧德林 发表于 2012-9-30 11:57
我电脑上显示答案是: 08时06分00秒

和我预期的 3600,000 应该是 00时06分00秒  有点差距 ...


那是因为你的时间毫秒数不是相对于格林威治时间  我不知道3600,000 ms是怎么来的?计算机里面的时间都是相对于格林威治时间时间的,你不能凭空的给一个多少多少毫秒 给我算他的时间 。

评分

参与人数 1技术分 +1 收起 理由
刘芮铭 + 1 国庆快乐

查看全部评分

回复 使用道具 举报
谭立文 发表于 2012-9-30 12:26
那是因为你的时间毫秒数不是相对于格林威治时间  我不知道3600,000 ms是怎么来的?计算机里面的时间都是 ...

这个 时间是一个商品的限时抢购里面的,比如还有 2个小时,1个小时,随便取的时间。你看我的代码


我的代码
recLen=600000;
                    recLen= recLen-1000;  
                    Date date = new Date(recLen);
                SimpleDateFormat df = new SimpleDateFormat("DD天HH小时mm分ss秒");
                txtView.setText("还剩:" + df.format(recLen));  

最后得出的结果是 01天00小时10分59秒
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马