无法区分java中两个日期之间的天数

pic*_*aso 0 java calendar date days

我想计算两个日期之间的天数差异.当日期的年份没有改变时,我的代码工作正常,但是当我计算两个日期之间的差异时(2012年1月13日到13/12/2011),它给出了一个负值.当我计算今天的日期和未来日期之间的差异时,它也会给出错误的差异值.请帮我.先感谢您.这是我的代码:

//getting values from text box
String fromtext = from.getText().toString();
String totext = to.getText().toString();
//sdf if a simple date formatter
SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy");
Date fromdate = (Date) sdf.parse(fromtext);
Date todate = (Date) sdf.parse(totext);

Calendar fromcal = Calendar.getInstance();
Calendar tocal = Calendar.getInstance();


    fromcal.setTime(fromdate);
    tocal.setTime(todate);// setting to date


    int reportDays=(int)(todate.getTime()-fromdate.getTime())/(3600*24*1000);
Run Code Online (Sandbox Code Playgroud)

请告诉我计算天数差异的最佳方法是什么.

Jig*_*shi 6

日期输入:13/01/2012,13/12/2011

格式似乎dd/MM/yyyy你正在使用错误的(即MM/dd/yyyy)