java计算java两个日期相差月份多少天小时分钟等

下次自动登录
现在的位置:
& 综合 & 正文
java判断2个时间相差多少天、多少小时、多少分
public static String TimeDiff(String pBeginTime, String pEndTime) throws Exception {
format = new SimpleDateFormat("yyyy-MM-dd hh:mm");
Long beginL = format.parse(pBeginTime).getTime();
Long endL = format.parse(pEndTime).getTime();
Long day = (endL - beginL)/;
Long hour = ((endL - beginL)%)/3600000;
Long min = ((endL - beginL)%%3600000)/60000;
return ("实际请假" + day + "小时" + hour + "分钟" + min);
&&&&推荐文章:
【上篇】【下篇】& java计算两个日期相差天小时分钟等
java计算两个日期相差多少天小时分钟等
/** 获取两个时间的时间查 如1天2小时30分钟 */
public static String getDatePoor(Date endDate, Date nowDate) {
long nd = 1000 * 24 * 60 * 60;
long nh = 1000 * 60 * 60;
long nm = 1000 * 60;
// long ns = 1000;
// 获得两个时间的毫秒时间差异
long diff = endDate.getTime() - nowDate.getTime();
// 计算差多少天
long day = diff /
// 计算差多少小时
long hour = diff % nd /
// 计算差多少分钟
long min = diff % nd % nh /
// 计算差多少秒//输出结果
// long sec = diff % nd % nh % nm /
return day + &天& + hour + &小时& + min + &分钟&;
代码来自java开源电子商务平台 HapiShopV1.0
文章作者:
本文地址:
版权所有 & 转载时必须以链接形式注明作者和原始出处!
或许你会感兴趣的文章
- 53,104 views - 39,080 views - 30,728 views - 28,300 views - 21,862 views - 20,095 views
文章数:227
评论数:3678812人阅读
java实用功能(18)
1、时间转换
data默认有toString()
输出,比如说Date date = new Date();
String toStr = date.toString();
输出的结果类似于:
Wed Sep 16 19:02:36 CST 2012
你要输出yyyy-MM-dd hh:mm:ss这种格式的话,
使用SimpleDataFormat类
Date date = new Date();
String dateStr = new SimpleDateFormat(&yyyy-MM-dd hh:mm:ss&).format(date);
System.out.println(dateStr);
输出结果像下面这样:
07:02:36当然啦,你也可以把:hh:mm:ss去掉,输出的结果也就只有年-月-日了
public static String getDatePoor(Date endDate, Date nowDate) {&&&&&long nd = 1000 * 24 * 60 * 60;&&&&long nh = 1000 * 60 * 60;&&&&long nm = 1000 * 60;&&&&&&&&&&&&long diff = endDate.getTime() - nowDate.getTime();&&&&&&&&long day = diff /&&&&&&&&long hour = diff % nd /&&&&&&&&long min = diff % nd % nh /&&&&&&&&&&&&return day + &天& + hour + &小时& + min + &分钟&;}
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:117072次
积分:1692
积分:1692
排名:千里之外
原创:39篇
转载:99篇
(4)(4)(5)(3)(4)(2)(8)(2)(4)(5)(2)(5)(5)(6)(43)(11)(26)
(window.slotbydup = window.slotbydup || []).push({
id: '4740881',
container: s,
size: '200,200',
display: 'inlay-fix'日期差计算
开始时间:
结束时间:
关于日期差计算
  为您准确方便得计算出两个时间相差多少天、时、分。
随机推荐查询工具
欢迎关注微信公众号:便民查询大全
CopyRight &
All Rights Reserved用户名:yuantingjun
文章数:113
访问量:39877
注册日期:
阅读量:1297
阅读量:3317
阅读量:461234
阅读量:1145687
[匿名]晨风:
51CTO推荐博文
比如两个日期:和,怎么才能精确的计算出这两个日期之间差的天数?
import java.text.ParseE
import java.text.SimpleDateF
import java.util.D
class Test2 {
public static String getDate(){
SimpleDateFormat ft = new SimpleDateFormat(&yyyy/MM/dd&);
Date dd = new Date();
return ft.format(dd);
public static long getQuot(String time1, String time2){
long quot = 0;
SimpleDateFormat ft = new SimpleDateFormat(&yyyy/MM/dd&);
Date date1 = ft.parse( time1 );
Date date2 = ft.parse( time2 );
quot = date1.getTime() - date2.getTime();
quot = quot / 1000 / 60 / 60 / 24;
} catch (ParseException e) {
e.printStackTrace();
public static void main(String[] args) throws Exception {
String date1 = &&;
String date2 = getDate();
long day = getQuot(date1,date2);
System.out.println( &距离 &+date1+& 还有 &+day+& 天& );
你看一下这段代码,是从今天到的天数。
Date的getTime()方法返回自日午夜(通用时间)以来的毫秒数。
用的getTime()减去今天的getTime()就是这两天相差的毫秒数,1秒=1000毫秒,1分钟=60秒,1小时=60分钟,1天=24小时,然后除除除就得到天数了。
java怎么计算出 某年某月 到 某年某月之间的总月数 ?
//思路 (不考虑开发语言的因素)
// 月份只差其实就是,年份只差 乘以12 然后再加上 月份只差, 比如 2009-09 ----2012-02
// 这个就应该 ( )*12 +
(2-9)=36 +(-7)=29
//思路有了直接使用java套就可以了
public static void main(String[] args) throws ParseException {
//字符串格式化
DateFormat df = new SimpleDateFormat(&yyyy-MM&);
//字符串装换为Calendar
Calendar c= Calendar.getInstance();
c.setTime(df.parse(&2009-01&));
//字符串装换为Calendar
Calendar d= Calendar.getInstance();
d.setTime(df.parse(&2012-01&));
//计算年份只差 乘以12 然后加上月份之差
int m=(d.get(Calendar.YEAR)-c.get(Calendar.YEAR))*12+d.get(Calendar.MONTH)-
c.get(Calendar.MONTH);
System.out.println(m);
另外怎么 计算某年某月的天数 ?
题目:计算某年某月的天数
要求:通过键盘接收指定的年和月,判断该月的天数。
要点:月份可分为大月和小月,而二月份的天数跟是否闰年有关,所以对二月份要特殊处理。
class&DayTest&{&&&&&public&static&void&main(String[]&args)&throws&IOException&{&&&&&&&&&int&year&=&-1;&&&&&&&&&int&month&=&-1;&&&&&&&&&Scanner&in&=&new&Scanner(System.in);&&&&&&&&&System.out.println(&请输入年&);&&&&&&&&&year&=&in.nextInt();&&&&&&&&&System.out.println(&请输入月&);&&&&&&&&&month&=&in.nextInt();&&&&&&&&&System.out.println(year&+&&年&&+&month&+&&月有&&+&days(year,&month)&+&&天&);&&&&&}&&&&&public&static&int&days(int&year,&int&month)&{&&&&&&&&&int&days&=&0;&&&&&&&&&if&(month&!=&2)&{&&&&&&&&&&&&&switch&(month)&{&&&&&&&&&&&&&case&1:&&&&&&&&&&&&&case&3:&&&&&&&&&&&&&case&5:&&&&&&&&&&&&&case&7:&&&&&&&&&&&&&case&8:&&&&&&&&&&&&&case&10:&&&&&&&&&&&&&case&12:&&&&&&&&&&&&&&&&&days&=&31;&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&case&4:&&&&&&&&&&&&&case&6:&&&&&&&&&&&&&case&9:&&&&&&&&&&&&&case&11:&&&&&&&&&&&&&&&&&days&=&30;&&&&&&&&&&&&&}&&&&&&&&&}&else&{&&&&&&&&&&&&&if&(year&%&4&==&0&&&&year&%&100&!=&0&||&year&%&400&==&0)&&&&&&&&&&&&&&&&&days&=&29;&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&days&=&28;&&&&&&&&&}&&&&&&&&&return&&&&&&}&}&
另附一简单方法:
import&java.text.ParseE&import&java.text.SimpleDateF&import&java.util.C&import&java.util.D&import&java.util.GregorianC&&/**&*&@author&crazy.j&*&@since&&*&@version&1.0&*/&public&class&CalendarTester&{&&&&&private&static&SimpleDateFormat&format&=&new&SimpleDateFormat(&yyyy年MM月&);&&&&&&/**&*&@param&args&*/&&&&&public&static&void&main(String[]&args)&{&&&&&&&&&String&source&=&&2007年2月&;&&&&&&&&&try&{&&&&&&&&&&&&&Date&date&=&format.parse(source);&&&&&&&&&&&&&Calendar&calendar&=&new&GregorianCalendar();&&&&&&&&&&&&&calendar.setTime(date);&&&&&&&&&&&&&System.out&&&&&&&&&&&&&&&&&&&&&.println(calendar.getActualMaximum(Calendar.DAY_OF_MONTH));&&&&&&&&&}&catch&(ParseException&e)&{&&&&&&&&&&&&&e.printStackTrace();&&&&&&&&&}&&&&&}&}&
了这篇文章
类别:未分类┆阅读(0)┆评论(0)

我要回帖

更多关于 java两个日期相差月份 的文章

 

随机推荐