您的位置:首页 > 编程语言 > Java开发

java计算时差

2016-02-02 11:13 281 查看
package cn.com.pansky.usp4o.common.util;

import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class DateTool {
private static DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

/**
* 计算时差
* @param beginTime
* @param endTime
* @return
*/
public static String getTotalDateTime(String beginTime,String endTime){
String time = null;
try {
java.util.Date now = df.parse(beginTime);
java.util.Date date=df.parse(endTime);
long l=now.getTime()-date.getTime();
long day=l/(24*60*60*1000);
long hour=(l/(60*60*1000)-day*24);
long min=((l/(60*1000))-day*24*60-hour*60);
long s=(l/1000-day*24*60*60-hour*60*60-min*60);
//System.out.println(""+day+"天"+hour+"小时"+min+"分"+s+"秒");
time = hour+"小时"+min+"分"+s+"秒";
} catch (Exception e) {
}
return time;
}

/**
* 字符串日期 转换为 Date
* @param strTime
* @return Date
*/
public static Date getConvertDate(String strTime){
Date  rt= null;
try {
rt = df.parse(strTime);
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return rt;
}

/**
* 返回小时/分钟
* @param  4小时0分
* @return 4/0
*/
public static String getSplitTime(String time){
String hour ,min = null;
String[] field = time.split("小时");
hour=field[0];
String hV=field[1];
String[] mV= hV.split("分");
min=mV[0];
return hour+"/"+min;
}

/**
* 返回秒
* @param 4小时1分2秒
* @return  2
*/
public static String getReturnSec(String time){
String sec = null;
String[] field = time.split("分");
String[] sv=field[1].split("秒");
sec=sv[0];
return sec;
}

/**
* 【4小时1分10秒】+【1小时3分10秒】=【5小时3分20秒】
* @param begin
* @param end
* @return
*/
public static String getTotal(String begin,String end){
String hour ,min ,sec= null;
String[] field = begin.split("小时");
hour=field[0];
String hV=field[1];
String[] mV= hV.split("分");
min=mV[0];
String sc = mV[1];
String[] mecV = sc.split("秒");
sec = mecV[0];
//---------------------
String hour1 ,min1,sec1 = null;
String[] field1 = end.split("小时");
hour1=field1[0];
String hV1=field1[1];
String[] mV1= hV1.split("分");
min1=mV1[0];
String sc1 = mV1[1];
String[] mecV1 = sc1.split("秒");
sec1 = mecV1[0];
//-----------------------
int sumHour,sumMin ,sumSec= 0;
int h=Integer.parseInt(hour);
int h1=Integer.parseInt(hour1);
int m=Integer.parseInt(min);
int m1=Integer.parseInt(min1);
int s1=Integer.parseInt(sec1);
int s=Integer.parseInt(sec);
sumHour=h+h1;
sumMin= m+m1;
sumSec=s1+s;
System.out.println("sumMin" +sumMin);
for(int i =0;i<sumSec;i++){
if(sumSec >= 60){
sumMin=sumMin+60;
sumSec=sumSec-60;
}else{
break;
}
}
for(int i =0;i<sumMin;i++){
if(sumMin >= 60){
sumHour=sumHour+1;
sumMin=sumMin-60;
}else{
break;
}
}
return   sumHour + "小时" + sumMin + "分" +sumSec+"秒";
//		 return   sumHour + "小时" + sumMin + "分";
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: