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取消任务运行Oracle查询通过JDBC—连接中断,因为SQLSTATE(08006),错误代码(17002)IO错误:套接字读取中断

RESTful框架类字段是安全的还是不安全的

如何才能使我的程序不会要求两次输入?

CompleteableFuture是否运行在不同的内核上?

如何使用SpringBoot中的可分页对整数作为字符串存储在数据库中时进行排序

Spring和可编辑";where";@Query

MimeMessage emlMessage=new MimeMessage(Session,emlInputStream);抛出InvocationTargetException

Kotlin Val是否提供了与Java最终版相同的可见性保证?

我怎样才能让IntelliJ标记toString()的任何实现?

扩展视图高度,并将其拖动到较低的视图上,而不是将其向下推?

错误:未找到扩展元素在JBossEAP 7.2中安装FUSE时出错

IntelliJ IDEA依赖项工具窗口丢失

IntelliJ IDEA中的JavaFX应用程序无法在资源中找到CSS文件

使用MediaPlayer类在一段时间后停止播放音乐

在ECLIPSE上的M1 Pro上运行JavaFX的问题

如何制作回文程序?

从字节数组切换到JakartaMail org.springframework.mail.javamail.JavaMailSender InputStreamResource

java.lang.ClassCastException:com.google.firebase.FirebaseException无法转换为com.google.fire base.auth.FirebaseAuthException

使用DynamoDB增强客户端时未更新属性

找不到 jar 文件系统提供程序try 使用 jdeps 和 jlink 创建收缩 Java 映像来运行 Minecraft