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 + "分"; } }
相关文章推荐
- Java泛型:泛型类、泛型接口和泛型方法
- java semaphore 信号量,流控程序
- Spring入门详解
- Java学习笔记struts2篇--通配符
- Java的多态及注意事项
- 给jdk写注释系列之jdk1.6容器(12):PriorityQueue源码解析PriorityQueue是一种什么样的容器呢?看过前面的几个jdk容器分析的话,看到Queue这个单词你一定会,哦~这
- JAVA代码中注释的使用
- java设计模式之责任链模式
- SiteMesh3整合SpringMVC+FreeMarker
- java abstract介绍
- Eclipse调试Android工具集锦之三-ADB
- 归并排序的原理及java代码实现
- Spring MVC Rest 服务 406 错误解决方案
- Spring Aop
- 本地方法(JNI)——使用调用API
- Spring简单入门实例
- Java实现克隆一个对象
- JAVA_JCF(Java Collection Framework)学习笔记(一)
- Java编写的多线程本机端口扫描器
- 常用的java应用服务器