如何计算 GWT 中两个日期框之间的天数差异?

How to calculate difference in days between two dateboxes in GWT?

我的 GWT 应用程序中有 1 个日期框 (datebox1),它允许用户设置过去的日期。

Datebox1 设置为以下格式(这可能并不重要): datebox1.setFormat(新DateBox.DefaultFormat (DateTimeFormat.getFormat("EEE, MMM dd, yyyy")));

如何以编程方式计算日期框中所选日期与当前日期之间的天数差异。

我在网上找不到太多东西,希望能举一个简单的例子。

最简单的方法:

Date currentDate = new Date();
int daysBetween = CalendarUtil.getDaysBetween(myDatePicker.getValue(), currentDate);

如果您知道如何从文本框中提取日期,则可以使用以下函数获取任意两个日期之间的时差

public String getTimeDiff(Date dateOne, Date dateTwo) {
String diff = "";
long timeDiff = Math.abs(dateOne.getTime() - dateTwo.getTime());
diff = String.format("%d hour(s) %d min(s)", TimeUnit.MILLISECONDS.toHours(timeDiff),
TimeUnit.MILLISECONDS.toMinutes(timeDiff) - TimeUnit.HOURS.toMinutes(TimeUnit.MILLISECONDS.toHours(timeDiff)));
return diff;
}

下面的代码块会对你有用

    Date selectedDate = DateBox.getDatePicker().getValue();
    Date currentDate= new Date();

    long fromDate = selectedDate.getTime();
    long toDate = currentDate.getTime();

    long diffGap = toDate - fromDate;
    long diffDays = diffGap / (24 * 60 * 60 * 1000);