【问题标题】:Having troubles with converting time in iso using java使用java在iso中转换时间时遇到问题
【发布时间】:2016-07-03 10:09:53
【问题描述】:

我使用下面的代码使用 java 将日期时间格式化为 iso 格式(我从当前时间减少了 1 分钟)并获得输出为“2016-03-17T11:38:21.xxxZ”我希望将其与数据库中提到的时间进行比较。

构建该数据插入查询的人,他使用 javascript 来获取时间并将其格式化为 iso。

数据库中的日期看起来像这样“2016-03-17T06:09:21.530Z”,它的实际时间是“11:39:21 GMT+0530(印度标准时间)”,这与我现在的时间相似但我将这两个日期作为字符串进行比较。并从 DB 获取 1 分钟的早期数据。在这种情况下,我无法输出,因为作为字符串,这两个不匹配。有人可以推荐一个解决方案吗? 我使用 OrientDB

Java 代码

SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'");
        Calendar date = Calendar.getInstance();
        long t = date.getTimeInMillis();
        date.setTimeInMillis(t);
        date.set(Calendar.MINUTE, date.get(Calendar.MINUTE) - 1);
        String time1minEarly = df.format(date.getTime());

【问题讨论】:

  • 使用LocalDateTime 类。 LocalDateTimetoString() 给出 ISO 格式输出。
  • 比较两个字符串的代码在哪里?贴一个从读取数据库到比较两个字符串的完整示例
  • 没有。情况很复杂。我们正在使用 3rd 方函数来访问 DB(插入和写入数据)。我所能做的就是输入日期和时间作为字符串。然后操作 (>,

标签: javascript java datetime datetime-format iso


【解决方案1】:

谢谢大家的支持。 我知道如何做到这一点。这是很容易的。无论@rpy和@Prashant是正确的。日历不适合解决我的问题。此外LocalDateTime了。但它确实帮助我找出正确的方式。 P>

@rpy和@Prashant他们都做了小姐一件事的JavaScript时表示UTC时间。这是个问题。 (这是比我的位置后面5.5小时)所以,我想出这个下面的代码。它做了我想做的事。 P>

这是很容易。所有你需要做的是提供您的区域ID。 (您可以使用此代码获取区域ID:去链接 - http://www.javadb.com/list-possible-timezones-or-zoneids-in-java/) P>

此外,可以通过更改“DateTimeFormatter”值选择这么多的格式。 P>

ZoneId UTCzoneId = ZoneId.of("UTC");
ZonedDateTime time1minEarly = ZonedDateTime.now(UTCzoneId).minusMinutes(1);
String UTCtime1minerly = time1minEarly.format(DateTimeFormatter.ISO_INSTANT);

停止放类似于这样的: “2016-03-17T10:39:21.530Z” P>

( - UTC时间当时:2016-03-17T10:40:21.530Z) P>

【讨论】:

    【解决方案2】:

    使用 Calendar.set() 和 Calendar.get() 不会以您想要的方式修改日期:

    这将修改您案例中的分钟字段。因此,减去“1”会减少分钟,但对于分钟最初为零的情况,不能给出可行的日期。

    您可以从“t”变量中减去一分钟的毫秒数,以获得真正的分钟偏移量。

    为了便于使用,您还可以考虑遵循 @Prashant 的建议并使用 joda 库中的 LocalDateTime 类。

    【讨论】:

      猜你喜欢
      • 2012-10-16
      • 1970-01-01
      • 2022-01-09
      • 2021-12-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-05-22
      相关资源
      最近更新 更多