Java中 根据两个确定到年月日时分秒的时间字符串比较相差几分钟
时间: 2024-02-24 12:59:22 浏览: 217
可以使用Java中的DateTimeFormatter和LocalDateTime类来解决这个问题。具体步骤如下:
1. 使用DateTimeFormatter将时间字符串转换为LocalDateTime对象。
```java
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
LocalDateTime dateTime1 = LocalDateTime.parse(timeStr1, formatter);
LocalDateTime dateTime2 = LocalDateTime.parse(timeStr2, formatter);
```
2. 使用Duration类计算两个时间的相差时间。
```java
Duration duration = Duration.between(dateTime1, dateTime2);
long minutes = duration.toMinutes();
```
其中,toMinutes()方法可以将相差时间转换为分钟数。
完整代码示例:
```java
import java.time.Duration;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
public class TimeUtil {
public static long getMinutesBetween(String timeStr1, String timeStr2) {
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
LocalDateTime dateTime1 = LocalDateTime.parse(timeStr1, formatter);
LocalDateTime dateTime2 = LocalDateTime.parse(timeStr2, formatter);
Duration duration = Duration.between(dateTime1, dateTime2);
return duration.toMinutes();
}
}
```
调用示例:
```java
String timeStr1 = "2021-09-01 10:00:00";
String timeStr2 = "2021-09-01 10:05:30";
long minutes = TimeUtil.getMinutesBetween(timeStr1, timeStr2);
System.out.println("相差分钟数:" + minutes);
```
输出结果:
```
相差分钟数:5
```
阅读全文