小时中两个日期之间的时差无法在Java Android中正确计算

时间:2019-06-01 05:01:20

标签: java simpledateformat difference

我正在计算两个日期之间的时差。运行正常。但是,当我今天打开应用程序并进行测试时,它没有给出正确的小时数差异。我得到一个日期,例如6 PM(MM / dd / yyyy hh),另一个是当前电话日期(MM / dd / yyyy hh:mm)

我尝试通过更改SDF来解决问题,但是没有用。通过更改HH:ss和hh:ss a

SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy hh");
            SimpleDateFormat currSdf = new SimpleDateFormat("MM/dd/yyyy hh:mm");
            Date start_date_time = sdf.parse(startDate);
            Date curr_date_time = currSdf.parse(currSdf.format(new Date()));
            double diff=start_date_time.getTime()-curr_date_time.getTime();
            double secondsInMilli = 1000;
            double minutesInMilli = secondsInMilli * 60;
            double hoursInMilli = minutesInMilli * 60;
            //long diffHours = diff / (60 * 60 * 1000) % 24;
            double diffHours = diff / hoursInMilli;

期望输出是正确的小时数,但是我的小时数是减数。 就像-2.5,随着我增加AM时间并开始减少小时数

0 个答案:

没有答案