如何使用DateTimeFormat字符串的java.util.date?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (1542)

如何使用以下方法将java.util.Date转换为字符串?

 DateTimeFormatter dateTimeFormatter = DateTimeFormat.forPattern("yyyy-MM-dd'T'HH:mm:ss")

获得的Date对象被传递

DateTime now = new DateTime(date);
提问于
用户回答回答于

如果你使用的是Java 8,则java.util.Date不应该首先使用(除非Date从无法控制的库中接收对象)。

在任何情况下都可以将a转换Date为java.time.Instant使用:

Date date = ...;
Instant instant = date.toInstant();

可以将该瞬间转换为LocalDateTime对象:

LocalDateTime ldt = instant.atOffset(ZoneOffset.UTC).toLocalDateTime();

最后你可以输出:

DateTimeFormatter fmt = DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss");
System.out.println(ldt.format(fmt));

或者使用预定义的格式化程序DateTimeFormatter.ISO_LOCAL_DATE_TIME

System.out.println(ldt.format(DateTimeFormatter.ISO_LOCAL_DATE_TIME));
用户回答回答于

你使用的是joda api:ergo,所以DateTimeFormat是从org.joda.time.format.DateTimeFormat:

 String dateTime = "02-13-2017 18:20:30";
// Format for input
DateTimeFormatter dtf = DateTimeFormat.forPattern("MM-dd-yyyy HH:mm:ss");
// Parsing the date
DateTime jodatime = dtf.parseDateTime(dateTime);

System.out.println(jodatime );

所属标签

可能回答问题的人

  • 学生

    3 粉丝476 提问7 回答
  • uncle_light

    5 粉丝518 提问6 回答
  • 最爱开车啦

    8 粉丝503 提问5 回答
  • 骑牛看晨曦

    4 粉丝522 提问5 回答

扫码关注云+社区

领取腾讯云代金券