java 将字符串转为LocalDateTime
时间: 2023-11-16 20:59:21 浏览: 221
Java中实现LocalDateTime与Date相互转化
Java中可以使用多种方法将字符串转换为LocalDateTime,以下是其中两种常用的方法:
方法一:使用hutool包进行转换
可以使用hutool包中的DateUtil.parse()方法将字符串先转换成DateTime,再转换为LocalDateTime。示例代码如下:
```
public static LocalDateTime parseLocalDateTime(String dateStr) {
DateTime parse = DateUtil.parse(dateStr);
Instant instant = parse.toInstant();
ZoneId zoneId = ZoneId.systemDefault();
LocalDateTime localDateTime = instant.atZone(zoneId).toLocalDateTime();
return localDateTime;
}
```
方法二:使用SimpleDateFormat进行转换
可以使用SimpleDateFormat将字符串转换为Date类型,再将Date类型转换为LocalDateTime。示例代码如下:
```
public static LocalDateTime toLocalDateTime(String dateStr) {
try {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = sdf.parse(dateStr);
Instant instant = date.toInstant();
ZoneId zoneId = ZoneId.systemDefault();
LocalDateTime localDateTime = instant.atZone(zoneId).toLocalDateTime();
return localDateTime;
} catch (ParseException e) {
e.printStackTrace();
throw new RuntimeException();
}
}
```
方法三:使用DateTimeFormatter进行转换
可以使用DateTimeFormatter将字符串直接转换为LocalDateTime。示例代码如下:
```
public static LocalDateTime toLocalDateTime(String dateStr) {
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
LocalDateTime localDateTime = LocalDateTime.parse(dateStr, formatter);
return localDateTime;
}
```
阅读全文