LocalDate - 如何删除LocalDate中的字符“T”

2022-09-03 12:23:58

如何在我的本地日期中删除T?

我需要删除“T”以匹配数据库中的数据。

这是我的代码

DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss", Locale.US);

String strLocalDate = patientDiagnosisByDoctor.getDiagnosisDateTime().toLocalDateTime().toString();

LocalDateTime localDate = LocalDateTime.parse(strLocalDate, formatter);

System.out.println(localDate);

我得到了这个输出:

2015-10-23T03:34:40

删除“T”字符的最佳方法是什么?伙计们,有什么想法吗?


答案 1

删除“T”字符的最佳方法是什么?伙计们,有什么想法吗?

使用 a 以您想要的方式格式化值...DateTimeFormatterLocalDateTime

DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss", Locale.US);

String strLocalDate = "2015-10-23T03:34:40";

LocalDateTime localDate = LocalDateTime.parse(strLocalDate, formatter);

System.out.println(localDate);
System.out.println(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss").format(localDate));
System.out.println(DateTimeFormatter.ofPattern("HH:mm:ss yyyy-MM-dd ").format(localDate));

哪些印刷品...

2015-10-23T03:34:40
2015-10-23 03:34:40
03:34:40 2015-10-23 

请记住,日期/时间对象只是自固定时间点(如Unix时代)以来经过的时间量的容器,它们没有自己的内部/可配置格式,它们倾向于使用当前区域设置的格式。

相反,当您想要显示日期/时间值时,应首先使用 a 将日期/时间值的格式设置为所需的格式,并显示DateTimeFormatter

我需要删除“T”以匹配数据库中的数据。

哎呀,错过了那部分。

在这种情况下,您应该转换要使用的日期/时间值,并使用 a 插入/更新它们java.sql.TimestampPreparedStatement


答案 2
    String localTime = "2018-09-13 00:00:00";
    DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss", Locale.ENGLISH);
    LocalDateTime date = LocalDateTime.parse(localTime, formatter);
    String replace = date.toString().replace("T", " ");
    System.out.println(replace);

2018-09-13 00:00