【问题标题】:Subtracting Dates using Calendar View [duplicate]使用日历视图减去日期[重复]
【发布时间】:2019-09-08 10:05:23
【问题描述】:

例如, 入住日期为 17-3-2019 和 退房日期为 18-3-2019。 那么我如何减去以获得它们的差异呢? 我在 java(android studio) 中使用日历视图

【问题讨论】:

  • 两个日期之间需要不同吗?
  • 发帖前总是搜索 Stack Overflow。
  • 仅供参考,java.util.Datejava.util.Calendarjava.text.SimpleDateFormat 等麻烦的日期时间类现在已被 java.time 类所取代。大多数 java.time 功能在 ThreeTen-Backport 项目中被反向移植到 Java 6 和 Java 7。进一步适用于ThreeTenABP 中的早期 Android (How to use ThreeTenABP…

标签: java android


【解决方案1】:

您可以将日期转换为毫秒并轻松获取差异。

请检查此代码。

public static long getDiffInDay(String date1, String date2) {
     long diff = dateToMilli("dd-MM-yyyy", date2) - dateToMilli("dd-MM-yyyy", date1);
     return TimeUnit.DAYS.convert(diff, TimeUnit.MILLISECONDS);
 }

public static long dateToMilli(String pattern, String dateTime) {

    final SimpleDateFormat sdf = new SimpleDateFormat(pattern, Locale.getDefault());

    try {
        return sdf.parse(dateTime).getTime();
    } catch (Exception e) {
        return 0;
    }
}

使用您的签入和签出日期调用 getDiffInDay() 方法。它会返回给你几天之间的差异。

喜欢

long Days = getDiffInDay("17-3-2019", "18-3-2019");

希望对你有帮助。

【讨论】:

  • 您的问题解决了吗?
猜你喜欢
  • 2016-08-31
  • 1970-01-01
  • 2021-05-26
  • 1970-01-01
  • 2020-06-30
  • 1970-01-01
  • 2011-03-06
  • 1970-01-01
  • 2014-10-01
相关资源
最近更新 更多