如果我的字符串在 Java 中是“6/27/2024 12:27:00 AM”,如何添加小时数?

问题描述 投票:0回答:1

我需要在“6/27/2024 12:27:00 AM”的时间上添加 8 个小时,因此结果应该是“6/27/2024 8:27:00 PM”并将其作为字符串返回。

我尝试使用正则表达式,但有缺陷且太复杂,必须添加 AM 和 PM 更改的条件。我正在寻找最简单的方法来解决这个问题。

java selenium-webdriver
1个回答
-1
投票

方法有很多,我用的是日历

String input = "6/27/2024 12:27:00 AM";
SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss a", Locale.ENGLISH);

try {
    Date date = sdf.parse(input);
    Calendar calendar = Calendar.getInstance();
    calendar.setTime(date);

    // Add hours
    calendar.add(Calendar.HOUR_OF_DAY, 3);

    String formattedDateTime = sdf.format(calendar.getTime());

    System.out.println("Original date time: " + input);
    System.out.println("Date time after adding hours: " + formattedDateTime);
} catch (ParseException e) {
    System.out.println("Exception: " + e.getMessage());
}
© www.soinside.com 2019 - 2024. All rights reserved.