「JAVA年月减」java date日期相减

博主:adminadmin 2023-01-16 19:12:09 456

今天给各位分享JAVA年月减的知识,其中也会对java date日期相减进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

java如何计算日期的加减

第一种,知道日期,如2019091109144

String str=txnTime;

SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");//格式化输出日期

Date dt = null;

try {

dt = sdf.parse(str);

} catch (ParseException e) {

// TODO 自动生成的 catch 块

e.printStackTrace();

}

Calendar rightNow = Calendar.getInstance();

rightNow.setTime(dt);

rightNow.add(Calendar.YEAR,-1);//日期减1年

rightNow.add(Calendar.MONTH,3);//日期加3个月

rightNow.add(Calendar.DAY_OF_YEAR,10);//日期加10天

rightNow.add(Calendar.SECOND,60);//日期加60秒天

Date dt1=rightNow.getTime();

String reStr = sdf.format(dt1);

System.out.println(reStr);

第二种,自己获取时间,格式化输出计算加减

SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");//格式化输出日期

Date now = new Date();

long time = 60*1000;//60秒

Date afterDate = new Date(now .getTime() + time);//60秒后的时间

Date beforeDate = new Date(now .getTime() - time);//60秒前的时间

System.out.println(sdf.format(afterDate ));

java月份相减

/**

  * @param args

  */

 public static Integer getDiffNum(Date startMonth,Date endMonth){

 

  

        Integer monthNum = 0;

        Integer yearNumber = 0;

        Calendar startCalendar = Calendar.getInstance(); 

        Calendar endCalendar = Calendar.getInstance();

       

        startCalendar.setTime(startMonth); 

        endCalendar.setTime(endMonth);

       

        yearNumber = endCalendar.get(endCalendar.YEAR) - startCalendar.get(endCalendar.YEAR);

        monthNum = endCalendar.get(Calendar.MONTH) - startCalendar.get(Calendar.MONTH);

       

        return yearNumber*12 + monthNum;

   }

已经测试

java 中 日期如何相加减???

这个东西很简单。

现在是2004-03-26 13:31:40

过去是:2004-01-02 11:30:24

要获得两个日期差,差的形式为:XX天XX小时XX分XX秒

方法一:

DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

try

{

Date d1 = df.parse("2004-03-26 13:31:40");

Date d2 = df.parse("2004-01-02 11:30:24");

long diff = d1.getTime() - d2.getTime();

long days = diff / (1000 * 60 * 60 * 24);

}

catch (Exception e)

{

}

方法二:

SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

java.util.Date now = df.parse("2004-03-26 13:31:40");

java.util.Date date=df.parse("2004-01-02 11:30:24");

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+"秒");

方法三:

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);

long hour1=between%(24*3600)/3600;

long minute1=between%3600/60;

long second1=between%60/60;

System.out.println(""+day1+"天"+hour1+"小时"+minute1+"分"+second1+"秒");

java中如何实现日期相减

求两个日期之间相隔的天数:

Java代码示例:

java.text.SimpleDateFormat format = new java.text.SimpleDateFormat("yyyy-MM-dd");

java.util.Date beginDate= format.parse("2007-12-24");

java.util.Date endDate= format.parse("2007-12-25");

long day=(date.getTime()-mydate.getTime())/(24*60*60*1000);

System.out.println("相隔的天数="+day);

java年月相减得出哪几个月份

import java.text.ParseException;

import java.text.SimpleDateFormat;

import java.util.Date;

public class Example {

public static strictfp void main(String[] args) throws ParseException {

String string = "2012/10/20";

String string2 = "2013/11/05";

String[] dates = getMonth(string, string2);

for(int i = 0 ; i dates.length ; i++) {

System.out.print(dates[i] + " ");

}

}

@SuppressWarnings("deprecation")

private static String[] getMonth(String string, String string2) throws ParseException {

SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");

Date date1 = sdf.parse(string);

Date date2 = sdf.parse(string2);

int month = 0;

String[] months;

//假如年份相等

if(date1.getYear() == date2.getYear()) {

month = date2.getMonth() - date1.getMonth();

months = new String[month+1];

months[0] = date1.getMonth() + 1 + "月" ;

for(int i = 1; i months.length; i++) {

months[i] = date1.getMonth() + 1 + i + "月";

}

return months;

} else {

//相差的年数乘以12是月数

month = (date2.getYear() - date1.getYear())*12 +date2.getMonth() - date1.getMonth();

months = new String[month + 1];

months[0] = date1.getMonth() + 1 + "月" ;

System.out.println(month);

for(int i = 1; i months.length; i++) {

//这里要进行取余操作,,,,,例如 13个月会变成 1月

if((date1.getMonth() + 1 + i)%12 == 0) {

months[i] = "12月" ;

continue;

}

months[i] = (date1.getMonth() + 1 + i)%12 + "月";

}

return months;

}

}

}

啥也不说了....着急要分 代码没重构...... string2 必须比 string 要大的 这个你知己排除下拉 大哥.....求分啦~~

java时间加减

附上代码:

        Date date = new Date("2014/1/10 18:20");

        Date date2 = new Date("2014/1/11 3:5");

        long temp = date2.getTime() - date.getTime();    //相差毫秒数

        long hours = temp / 1000 / 3600;                //相差小时数

        long temp2 = temp % (1000 * 3600);

        long mins = temp2 / 1000 / 60;                    //相差分钟数

        System.out.println("date2 与 date 相差" + hours + "小时"+ mins + "分钟");

****************************************希望能够帮助到你!************************************************

如果我的回答对你有帮助,

别忘了点击我的回答下方【选为满意答案】按钮。

谢谢!

JAVA年月减的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java date日期相减、JAVA年月减的信息别忘了在本站进行查找喔。