`

java 计算时间相差-A天B时C分D秒工具类

    博客分类:
  • JAVA
阅读更多
JAVA经常要用到取时间,不管是做判断,分析,还是报表数据,正面是两个方法,第一个getSecond()两个参数分别是两个日期型数据,返回值为两个日期间隔的毫秒数,第二个方法getBeapartDate()参数为一个LONG型数据,也就是毫秒数由此得到相隔的具体时间差,返回值为X天X时X分X秒,
如:





import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.Locale;


public class testTime {

	/**
	 * @param args
	 * @throws ParseException 
	 */
	
	/**
	* 根据所给日期返回两日期相差的秒数
	* @param d1
	* @param d2
	* @return 返回两个日期间隔的毫秒数
	*/

	
	public static long getSecond(Date d1,Date d2)
	{
	      long a1 = d1.getTime();
	      long a2 = d2.getTime();
	      long a3 = (a1 - a2)/1000;
	  
	      return a3;
	} 

	/**
	* 根据所秒数,计算相差的时间并以**时**分**秒返回
	* @param d1
	* @param d2
	* @return
	*/
	public static String getBeapartDate(long m)
	{
	      String beapartdate="";
	      int nDay = (int)m/(24*60*60);   
	      int nHour = (int)(m-nDay*24*60*60)/(60*60);   
	     int nMinute = (int)(m-nDay*24*60*60-nHour*60*60)/60;   
	     int nSecond = (int)m-nDay*24*60*60-nHour*60*60-nMinute*60;
	      beapartdate = nDay +"天"+nHour+"小时"+nMinute+"分"+nSecond+"秒";
	  
	     return beapartdate;
	}
	 


	
	
	/**
	 * @param args
	 * @throws ParseException 
	 */
	public static void main(String[] args) throws ParseException 
	{ 
	Date now=new Date(); 
	SimpleDateFormat   f   =   new   SimpleDateFormat("yyyy-MM-dd HH:mm:ss");   
	String time =  new   SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
	 java.util.Date end = f.parse("2009-10-09 16:12:11");
	 java.util.Date   begin=   f.parse("2009-09-09 10:10:10");
	 String xx = getBeapartDate(getSecond(end,begin));
	 System.out.println(xx);
	
	}
	
	
	
}






分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics