gpt4 book ai didi

java - 替换java中的时间值

转载 作者:行者123 更新时间:2023-12-01 07:18:24 25 4
gpt4 key购买 nike

我有一个旧的字符串值,如下所示

2018-03-21 00:00:00.0 

我想将时间更改为 23:18:19,但日期仍为 2018-03-21。

因此新值将为2018-03-21 23:18:19

这是我尝试过的

System.out.println("date is " + date);   // 2018-03-21 00:00:00.0 

String[] parts = date.split(" ");
System.out.println("Date: " + parts[0]); // 2018-03-21
System.out.println("Time is : " + parts[1]); // 00:00:00.0

String replaceString=parts[1].replace(?,'23:18:19');
System.out.println("Value is : " + replaceString); //2018-03-21 23:18:19

我应该在中放入什么?

最佳答案

使用 DateTimeFormatter可能是最好的方法。根本不涉及令人讨厌的字符串操作。

DateTimeFormatter formatter = new DateTimeFormatterBuilder()
.append(DateTimeFormatter.ISO_LOCAL_DATE)
.appendLiteral(' ')
.append(DateTimeFormatter.ISO_LOCAL_TIME)
.toFormatter();

LocalDateTime oldTime = LocalDateTime.parse("2018-03-21 00:00:00.0", formatter);
LocalDateTime newTime = oldTime.withHour(23).withMinute(18).withSecond(19).withNano(0);

System.out.println(newTime.format(formatter));

输出:2018-03-21 23:18:19

关于java - 替换java中的时间值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49464821/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com