当前位置: 首页 > 知识库问答 >
问题:

如何在Joda中使用JDK GregorianCalendar对象日期

单于煌
2023-03-14

我正在尝试使用Joda库,因为用Java本地方法计算周期是一个棘手的问题,所有的尝试都给出了不精确的结果

我看过这个样本

int n = Days.daysBetween(start.toLocalDate(), end.toLocalDate()).getDays();

因为我的所有类都管理GregorianCalendar,所以我需要那个计算天数的方法支持GregorianCalendar,类似于

 public int countDays(GregorianCalendar start, GregorianCalendar end){
     //convert to joda start and end
     ...
     return Days.daysBetween(start.toLocalDate(), end.toLocalDate()).getDays();
 }

那么我的问题是:如何将GregorianCalendar对象转换和重新转换为Joda管理的对象而不产生副作用?

共有1个答案

商和颂
2023-03-14

使用DateTime构造函数,该构造函数接受对象,该对象可以“包括ReadableInstant、String、Calendar和Date”。它还特别提到GregorianCalendar

public int countDays(GregorianCalendar gregStart, GregorianCalendar gregEnd) {
    DateTime start = new DateTime(gregStart);
    DateTime end = new DateTime(gregEnd);
    return Days.daysBetween(start, end).getDays();
}
 类似资料:
  • 问题内容: 我有准备好的陈述 其中时间是类型的时间戳在的PostgreSQL数据库。 我要插入一个Joda-Time DateTime对象,或者应该说我正在尝试。我找不到将DateTime对象转换为java.sql.Timestamp的方法。我已经阅读了Joda- Time文档,看不到对此的任何引用。 谢谢。 问题答案: 您可以先将Joda DateTime转换为长(自纪元以来的毫秒),然后从中创

  • 问题内容: 我正在开发Play应用程序,并且试图在我的case类中使用Joda DateTime对象。 基于此解决方案,出现此错误: 我正在使用Activator 1.3.2和Play 2.3.8。 你能给我建议吗? 提前致谢。 更新 我了解 play.api.libs.json.Reads中 的隐式值存在冲突 __ 我该如何解决这个问题? 问题答案: 期待更好的选择,这是我的解决方法:

  • 问题内容: 我有以下格式的日期作为字符串。我正在使用库,并将其转换为对象。我做了: 但是我收到以下错误: 如何将上述日期转换为对象? 问题答案: 用途:

  • 问题内容: 我想在自己的内部加载Google API客户端库,并且会在单独的javascript文件中调用方法。然后,该方法将输出到控制台。 客户端库已加载,没有任何问题,但消息未从控制台打印出来,我认为这是因为根本没有调用该方法。 这是我的: 这是包含方法的javascript文件: 如果这是纯JavaScript,则该方法将如下所示: es6中是否有任何与对象相似的东西。 问题答案: 组件方法

  • 我对非常陌生,并试图弄清楚为什么我的Watch在作为对象访问时没有触发。我看到了这条线索,但我不清楚我的问题是否相同。以下是我简化的例子(完整的例子得到了更多的属性和数组属性 JS 链接到JSFIDLE

  • 问题内容: 此代码段始终将日期解析为当前时区,而不是解析为字符串中的时区。 它输出: 而我期望: 有什么想法我做错了吗? 问题答案: 好吧,进一步Google搜索给了我自己的问题的答案:use ,如下所示: 这有效。