LocalDate - 如何删除字符' T'在LocalDate中

时间:2015-10-26 02:16:49

标签: java eclipse date java-8

如何删除localDate中的T?

我需要删除' T'匹配我的数据库中的数据。

这是我的代码

 <div class="pre"><strong>Title,</strong>&nbsp;</div>
<div class="pre">&nbsp;</div>
<blockquote>
<div class="pre">Message part</div>
</blockquote>
<div class="pre">&nbsp;</div>
<div class="pre"><span style="background-color: #800080;">Thanks</span>,<br /> <br />

</div>
</div>

我得到了这个输出:

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);

删除&#39; T&#39;最好的方法是什么?字符?任何想法的人?

3 个答案:

答案 0 :(得分:10)

  

删除“T”字符的最佳方法是什么?任何想法的人?

使用DateTimeFormatter按照您希望的方式格式化LocalDateTime的值...

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时代)过去的时间量的容器,它们没有自己的内部/可配置格式,它们倾向于使用当前的语言环境格式。

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

  

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

Opps,错过了那一部分。

在这种情况下,您应该将日期/时间值转换为使用java.sql.Timestamp并使用PreparedStatement插入/更新它们

答案 1 :(得分:1)

使用 Joda-Time 库的

简单选项。

new LocalDateTime(DateTimeZone.forID("Europe/London")).toString().replace("T", " ");

答案 2 :(得分:1)

    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