首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2EE开发 >

java.util.Date类的日期时间相减,该怎么处理

2012-01-23 
java.util.Date类的日期时间相减求教大侠们。java日期时间类(java.util.Date)怎么加减,要精确到毫秒的???[

java.util.Date类的日期时间相减
求教大侠们。java日期时间类(java.util.Date)怎么加减,要精确到毫秒的???

[解决办法]
需要使用java.util.Calendar

public abstract void add(int field,
int amount)根据日历的规则,为给定的日历字段添加或减去指定的时间量。例如,要从当前日历时间减去 5 天,可以通过调用以下方法做到这一点: 
add(Calendar.DAY_OF_MONTH, -5)。


可以参考该类的API
[解决办法]

java计算时间差及比较时间大小
比如:现在是2004-03-26 13:31:40
过去是:2004-01-02 11:30:24
我现在要获得两个日期差,差的形式为:XX天XX小时XX分XX秒

SimpleDateFormat dfs = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
java.util.Date begin=dfs.parse("2004-01-02 11:30:24");
java.util.Date end = dfs.parse("2004-03-26 13:31:40");
long between=(end.getTime()-begin.getTime())/1000;//除以1000是为了转换成秒
long day1=between/(24*3600);
long hour1=between%(24*3600)/3600;
long minute1=between%3600/60;
long second1=between%60/60;
System.out.println(""+day1+"天"+hour1+"小时"+minute1+"分"+second1+"秒");
[解决办法]

Java code
long t1 = d1.getTime();long t2 = d2.getTime();long millis = t2 - t1;long seconds = TimeUnit.MILLISECONDS.toSeconds(millis);long days = TimeUnit.MILLISCONDS.toDays(millis);
[解决办法]
推荐使用 apache 的 DateUtils,里面有很多日前的API,估计有你需要的方法.
[解决办法]
用getTime()方法就可以把日期转换成毫秒的,然后进行相减就可以了
[解决办法]
探讨

顶上去啊!

[解决办法]
你可以先把两个时间转成毫秒,做减法,然后再转过来!
[解决办法]
多看看api
[解决办法]
探讨

用getTime()方法就可以把日期转换成毫秒的,然后进行相减就可以了

[解决办法]
把日期转成Calender就可以了,计算很方便

热点排行