LocalDateTime 字符串转日期 带时区
时间: 2023-11-09 16:57:12 浏览: 142
要将 LocalDateTime 字符串转换为带时区的日期,您可以使用 DateTimeFormatter 来指定日期时间的格式,并使用 ZonedDateTime 类来表示带时区的日期。
以下是使用 Java 8 的示例代码:
```java
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.time.ZonedDateTime;
import java.time.format.DateTimeFormatter;
public class Main {
public static void main(String[] args) {
String dateTimeString = "2021-12-31T23:59:59"; // LocalDateTime 字符串
String zoneIdString = "Asia/Shanghai"; // 目标时区
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss");
LocalDateTime localDateTime = LocalDateTime.parse(dateTimeString, formatter);
ZoneId zoneId = ZoneId.of(zoneIdString);
ZonedDateTime zonedDateTime = ZonedDateTime.of(localDateTime, zoneId);
System.out.println(zonedDateTime);
}
}
```
运行此代码将输出带时区的日期时间,如 "2021-12-31T23:59:59+08:00[Asia/Shanghai]"。
阅读全文