计算时间差 **/
代码如下 | 复制代码 |
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String systemTime = sdf .format(new Date()).toString(); 将截取到的时间字符串转化为时间格式的字符串 **/ long between=(end.getTime()-begin.getTime())/1000;//除以1000是为了转换成秒 long day=between/(24*3600); |
比如:现在是2004-03-26 13:31:40
过去是:2004-01-02 11:30:24
我现在要获得两个日期差,差的形式为:XX天XX小时XX分XX秒
这里dateA,dateB的格式要与yyyy-MM-dd一致!切记!
实例
代码如下 | 复制代码 |
/** * 根????日期,取得相隔的天??br /> * 方法名 : * @param dateA * @param dateB * @return */ public static int getBetweenDayNumber(String dateA, String dateB) { long dayNumber = 0; long DAY = 24L * 60L * 60L * 1000L; SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd"); try { java.util.Date d1 = df.parse(dateA); java.util.Date d2 = df.parse(dateB); dayNumber = (d2.getTime() - d1.getTime()) / DAY; } catch (Exception e) { e.printStackTrace(); } return (int) dayNumber; } |
实例
代码如下 | 复制代码 |
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); |
实例
java中计算两日期间隔天数的简单示例
代码如下 | 复制代码 |
package com.color.program; import java.text.DateFormat; public class CompareTime { public static void main(String[] args){ try { /** } |
(format.parse(t1).getTime()-format.parse(t2).getTime() 间隔一年的话,这个数据就非常大了 如果多年,会不会有异常?
实例
计算两个日期时间差实例代码:
代码如下 | 复制代码 |
public static void main(String[] args) throws ParseException{ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); } |
可以把数据库的日期时间转换成毫秒数,然后计算间隔时间差,如果只想计算出两个时间相差几天可以:间隔秒数/60*60*24。
注意:数据库中或提供的日期时间格式一定要与SimpleDateFormat("yyyy-MM-dd HH:mm:ss")中的日期格式一致,不然会出错的。