String转LocalTime
时间: 2024-11-09 20:11:37 浏览: 9
在Java中,将`String`类型的日期时间转换为`LocalTime`需要先解析字符串,然后使用`LocalTime.parse()`方法。这个方法通常需要一个符合特定格式的字符串作为输入。例如,如果日期时间字符串包含小时、分钟和秒,你可以使用ISO 8601标准格式如"HH:mm:ss":
```java
import java.time.LocalTime;
import java.time.format.DateTimeFormatter;
public LocalTime stringToLocalTime(String dateTimeStr) {
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("HH:mm:ss");
try {
return LocalTime.parse(dateTimeStr, formatter);
} catch (DateTimeParseException e) {
System.err.println("Failed to parse date time string: " + e.getMessage());
return null; // 或者处理错误的方式
}
}
```
在这个例子中,`dateTimeStr`是要转换的字符串,`formatter`指定了输入字符串的格式。如果解析失败,会抛出`DateTimeParseException`。
相关问题
08:00 String 怎么转换成LocalTime
可以使用Java 8中的DateTimeFormatter类和LocalTime类将字符串转换为LocalTime。以下是一个示例代码:
```java
String timeStr = "08:00";
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("HH:mm");
LocalTime localTime = LocalTime.parse(timeStr, formatter);
```
这里的DateTimeFormatter.ofPattern("HH:mm")指定了输入字符串的格式为“小时:分钟”,并使用LocalTime.parse()方法将其转换为LocalTime类型的对象。
LocalDateTime转LocalTime
要将 LocalDateTime 转换为 LocalTime,您可以使用 LocalDateTime 的 toLocalTime() 方法。这将返回 LocalDateTime 对象的时间部分,忽略日期部分。
以下是一个示例代码:
```java
import java.time.LocalDateTime;
import java.time.LocalTime;
public class Main {
public static void main(String[] args) {
LocalDateTime dateTime = LocalDateTime.of(2022, 1, 1, 10, 30, 0);
LocalTime time = dateTime.toLocalTime();
System.out.println(time);
}
}
```
在上面的示例中,我们创建了一个 LocalDateTime 对象,并使用 toLocalTime() 方法将其转换为 LocalTime 对象。然后,我们打印输出 LocalTime 对象的值。
输出结果为:10:30:00
请注意,toLocalTime() 方法只提取 LocalDateTime 对象的时间部分,不包括日期。
阅读全文