gpt4 book ai didi

java - 将字符串解析为日期对象更改值

转载 作者:行者123 更新时间:2023-11-30 08:58:51 25 4
gpt4 key购买 nike

要更改时间格式(从 HH:mm:ssHH:mm),我使用了以下代码片段。

Date dateObj = new SimpleDateFormat("HH:mm:ss").parse(time);
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("HH:mm");
String time = simpleDateFormat.format(dateObj);

当我用正确的时间测试时,它可以正确地改变格式。
但是,当我用错误的时间进行测试时,它不仅会改变格式,还会改变时间本身。
例如,

  • 1:70:00 => 02:10(转换后)
  • 27:00:00 => 03:00(转换后)

我只想更改格式,而不是同时更改格式和值。
有什么办法吗?

最佳答案

当您解析像“1:70”这样的时间字符串时,Java 会从中计算出规范时间为“2:10”。由于您不希望这样的时间重新计算,只需重新格式化为:

  • 滴秒
  • 添加填充零

最好使用String操作。例如这样的事情:

    String str = "1:70:00";
String[] parts = str.split(":");
String newFormat = String.format("%02d:%02d", Integer.parseInt(parts[0]), Integer.parseInt(parts[1]));
// will be: "01:70"

关于java - 将字符串解析为日期对象更改值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27478815/

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