Java8添加了一个新的java.time API,用于处理日期和时间(JSR 310).

我将日期和时间作为字符串(例如"2014-04-08 12:30").如何从给定字符串中获取LocalDateTime个实例?

在我处理完LocalDateTime对象之后:如何将LocalDateTime实例转换回与上面所示格式相同的字符串?

推荐答案

Parsing date and time

要从字符串创建LocalDateTime对象,可以使用static LocalDateTime.parse()方法.它以字符串和DateTimeFormatter作为参数.DateTimeFormatter用于指定日期/时间模式.

String str = "1986-04-08 12:30";
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm");
LocalDateTime dateTime = LocalDateTime.parse(str, formatter);

Formatting date and time

要创建LocalDateTime对象的格式化字符串,可以使用format()方法.

DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm");
LocalDateTime dateTime = LocalDateTime.of(1986, Month.APRIL, 8, 12, 30);
String formattedDateTime = dateTime.format(formatter); // "1986-04-08 12:30"

请注意,有些常用的日期/时间格式在DateTimeFormatter中预定义为常量.例如:使用DateTimeFormatter.ISO_DATE_TIME格式化上面的LocalDateTime实例将导致字符串"1986-04-08T12:30:00".

parse()format()方法适用于所有与日期/时间相关的对象(例如LocalDateZonedDateTime)

Java相关问答推荐

如何使用反射在Java中获取注释的属性?

如何在 Java 或 Kotlin 中拆分数组?

使用 Java 流对嵌套对象进行分组和排序

JavaFX 无法在我的 macbook(m1 芯片组)上运行

如何消除 Java 流上的声纳问题“重构代码以便使用此流管道”

groupingBy 带布尔值,但添加自定义字符串作为键

Jpa阅读器Spring Batch

如何管理 Wordle Game (JavaFx) 中的重复字母?

请求 Spring Data JPA 存储库时指定复杂的排序标准

如何在日期选择器中设置不在当前月份的单元格

将 4 个已排序的数组合并为一个

使用 PreparedStatement 附加到查询

Java 流不打印出预期值

是否可以将字符串“1L”转换为相应的 Long 值?

为什么打印停止而没有错误?

我们应该如何设计不同内部微服务之间的通信

春天卡夫卡 |如何使 DeserializationException 可重试?

如何在选择时更改底部导航图标

我们如何定义一个带有填充的列,并且只有一个项目不继承 Jetpack Compose 中列的填充?

迷宫 2D 递归算法问题