java - 将年份和日期(例如 2013216 = 2013 年的第 216 天)转换为 Java 中的完整日期

标签 java database date datetime calendar

上下文:我在数据库中有两个表,一个将日期存储为一年中的某一天附加到年份本身,另一个将日期存储为完整日期。我需要比较两者,因此我只从表 B 中选择行,其中完整日期与表 A 中的日期是同一天。

我有一个日期作为一年和一天(例如 2014234,这是今年的第 234 天),我需要将其转换为完整的日期格式,例如:11-OCT-13 15.30.54.000000000 +02: 00 因此我可以比较两者,以便从表中选择字段,其中完整日期(例如 11-OCT)的日期与日期日期(例如 2014235)相同。

有人知道怎么做吗?

谢谢。

编辑:感谢大家的帮助!我已经成功转换了日期,现在有两个格式相同的日期,我只需要选择列与另一个表中的日期具有相同日期的行,我该怎么做?使用 = 检查两个日期是否等于毫秒,我只想检查它们是否与当天相同。你知道我会如何在 SQL 查询中处理这个问题吗?或者例如“11-OCT-13 = 11-OCT-13 15.30.54.000000000 +02:00”会返回 true 吗?

最佳答案

您可以使用SimpleDateFormatparse那:

DateFormat dt = new SimpleDateFormat("yyyyDDD");
Date dt = dt.parse(theString, 0);

y 是“年份”字段,D 是“一年中的某天”字段。

如果您需要将其转换回其他格式的字符串,您可以使用具有相关格式及其 format 的另一个实例。方法。

关于java - 将年份和日期(例如 2013216 = 2013 年的第 216 天)转换为 Java 中的完整日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25529298/

相关文章:

与数据库无关的应用程序

mysql - 如何从一个数据库中过滤掉另一个数据库中的记录

javascript - 为什么在使用日期对象创建日期时收到 "Argument of type ' Date' is not assignable to parameter of type 'string | number'“?

java - 程序并不总是打印出最长的字符串

java - 在将消息推送到 SQS 时提供请求超时

mysql - Sequelize 加载初始数据

Angular 5,HttpClient 将日期字段更改为 UTC

javascript - 是否有一种适用于所有浏览器和所有地区的日期字符串格式?

java - 将 ActionListener 添加到 JFormattedTextField

java - 没有 block 处理的Spring Batch步骤