我一直在尝试计算两个日期之间的时差,以分钟为单位。下面的代码是我所拥有的。但它给了我负面的值(value)。谁能帮帮我!!?
import java.util.Date;
import java.text.ParseException;
import java.text.SimpleDateFormat;
public class time {
/**
* @param args
* @throws ParseException
*/
public static void main(String[] args) throws ParseException {
// TODO Auto-generated method stub
String time1 = "05/01/2010 11:59:00";
String time2 = "04/30/2010 23:59:00";
SimpleDateFormat sdf = new SimpleDateFormat("mm/dd/yyyy H:mm:ss");
Date date1 = sdf.parse(time1);
Date date2 = sdf.parse(time2);
long difference = date1.getTime() - date2.getTime();
System.out.println(difference/(3600*1000));
}
}
最佳答案
您必须在第一个位置的日期格式中使用 MM
而不是 mm
:mm
is minutes, MM
is months :
SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy H:mm:ss");
关于java - 计算月份变化时的时差,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15903466/