我们如何将 com.datastax.driver.core.LocalDate 转换为 java.util.Date?
How can we convert com.datastax.driver.core.LocalDate to java.util.Date?
我正在处理日期。
Datastax 的 CQL cassandra API Row.getDate()
returns 一个 com.datastax.driver.core.LocalDate
。
我想将 API 返回的 com.datastax.driver.core.LocalDate
对象转换为 java.util.Date
。我该怎么做?
LocalDate.getMillisSinceEpoch()
Javadoc says Returns the number of milliseconds since January 1st, 1970 GMT. And, the Date(long)
构造函数 Javadoc 说 分配一个 Date
对象并将其初始化以表示自称为 "the epoch" 的标准基准时间以来指定的毫秒数,即 1970 年 1 月 1 日,00:00:00 GMT。 所以,给定一个 LocalDate
ld
你应该能够做类似
Date d = new Date(ld.getMillisSinceEpoch());
正如其他答案提到的那样,您可以使用
Date d = new Date(row.getDate().getMillisSinceEpoch());
或者您可以使用 java.sql.Date.valueOf
Date d = java.sql.Date.valueOf(row.getDate().getString());
我个人使用 row.getTimestamp
而不是 row.getDate
,其中 returns 日期对象本身。
Date d = row.getTimestamp();
您可以按照以下步骤,将 datastax LocalDate 转换为 Date:
- 使用来自 datastax LocalDate 的年月日创建 LocateDate
datstax.Localdate dt = 一些值
java.time.LocalDate ld = java.time.LocalDate.of(dt.getYear(), dt.getMonth(), dt.getDay())
- 在 LocalDate 上面的格式然后你会得到字符串类型的日期
字符串 dtt = ld.format(DateTimeFormater.ofPattern("dd/MM/yyyy"))
- 然后使用 SimpleDateFormat
进行转换
日期 tt = new SimpleDateFormat("dd/MM/yyyy").parse(dtt)
尽情享受吧:)
我正在处理日期。
Datastax 的 CQL cassandra API Row.getDate()
returns 一个 com.datastax.driver.core.LocalDate
。
我想将 API 返回的 com.datastax.driver.core.LocalDate
对象转换为 java.util.Date
。我该怎么做?
LocalDate.getMillisSinceEpoch()
Javadoc says Returns the number of milliseconds since January 1st, 1970 GMT. And, the Date(long)
构造函数 Javadoc 说 分配一个 Date
对象并将其初始化以表示自称为 "the epoch" 的标准基准时间以来指定的毫秒数,即 1970 年 1 月 1 日,00:00:00 GMT。 所以,给定一个 LocalDate
ld
你应该能够做类似
Date d = new Date(ld.getMillisSinceEpoch());
正如其他答案提到的那样,您可以使用
Date d = new Date(row.getDate().getMillisSinceEpoch());
或者您可以使用 java.sql.Date.valueOf
Date d = java.sql.Date.valueOf(row.getDate().getString());
我个人使用 row.getTimestamp
而不是 row.getDate
,其中 returns 日期对象本身。
Date d = row.getTimestamp();
您可以按照以下步骤,将 datastax LocalDate 转换为 Date:
- 使用来自 datastax LocalDate 的年月日创建 LocateDate
datstax.Localdate dt = 一些值
java.time.LocalDate ld = java.time.LocalDate.of(dt.getYear(), dt.getMonth(), dt.getDay()) - 在 LocalDate 上面的格式然后你会得到字符串类型的日期
字符串 dtt = ld.format(DateTimeFormater.ofPattern("dd/MM/yyyy")) - 然后使用 SimpleDateFormat
进行转换 日期 tt = new SimpleDateFormat("dd/MM/yyyy").parse(dtt)
尽情享受吧:)