onlyone1234567890 于 2016.09.09 18:08 提问

java时间差怎么计算,知道两个时间求两个时间的时间差,以年月日时间格式输出

5个回答

zenglinfu33   2016.09.09 18:29

new_culture   2016.09.09 18:30

int shijiancha = end - start;

system.out.print(new simpleDateForamt(shijiancha).format(年 月 日 时间));

onlyone1234567890 目前我只有五分

onlyone1234567890 大神我没有分啊,怎么得分

azraelyouxia   2016.09.09 18:41

qq_29040363   2016.09.12 11:37

qq_29040363   2016.09.12 11:39

import java.text.ParseException;

import java.text.SimpleDateFormat;

import java.util.Calendar;

import java.util.Date;

public class test16 {

``````/**
* @param args
* @throws ParseException
*/
public static void main(String[] args) throws ParseException {
// TODO Auto-generated method stub
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date d1=sdf.parse("2012-09-08 10:10:10");
Date d2=sdf.parse("2012-09-15 00:00:00");
System.out.println(daysBetween(d1,d2));

System.out.println(daysBetween("2012-09-08 10:10:10","2012-09-15 00:00:00"));
}

/**
* 计算两个日期之间相差的天数
* @param smdate 较小的时间
* @param bdate  较大的时间
* @return 相差天数
* @throws ParseException
*/
public static int daysBetween(Date smdate,Date bdate) throws ParseException
{
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
smdate=sdf.parse(sdf.format(smdate));
bdate=sdf.parse(sdf.format(bdate));
Calendar cal = Calendar.getInstance();
cal.setTime(smdate);
long time1 = cal.getTimeInMillis();
cal.setTime(bdate);
long time2 = cal.getTimeInMillis();
long between_days=(time2-time1)/(1000*3600*24);

return Integer.parseInt(String.valueOf(between_days));
}
``````

/**
*字符串的日期格式的计算
*/

public static int daysBetween(String smdate,String bdate) throws ParseException{

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

Calendar cal = Calendar.getInstance();

cal.setTime(sdf.parse(smdate));

long time1 = cal.getTimeInMillis();

cal.setTime(sdf.parse(bdate));

long time2 = cal.getTimeInMillis();

long between_days=(time2-time1)/(1000*3600*24);

``````   return Integer.parseInt(String.valueOf(between_days));
}
``````

}